顶部搜索功能添加及生成代码功能去重校验

This commit is contained in:
klausY
2020-05-25 16:55:27 +08:00
parent ad4562b026
commit 8c5ae61a13
5 changed files with 77 additions and 52 deletions
+41 -3
View File
@@ -28,6 +28,19 @@
>{{item.meta.title}}</el-breadcrumb-item>
</el-breadcrumb>
<div class="fl-right right-box">
<transition name="el-fade-in-linear">
<div v-show="show" class="transition-box" style="display: inline-block; ">
<el-select v-model="value" filterable placeholder="请选择" @blur="test()">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</div>
</transition>
<i class="el-icon-search" style="font-size: 20px; display: inline-block; " @click="show = !show"></i>
<Screenfull class="screenfull"></Screenfull>
<el-dropdown>
<span class="el-dropdown-link">
@@ -95,6 +108,7 @@ export default {
name: "Layout",
data() {
return {
show:false,
isCollapse: false,
isSider: true,
isMobile: false,
@@ -124,7 +138,24 @@ export default {
trigger: "blur"
}
]
}
},
options: [{
value: '选项1',
label: '黄金糕'
}, {
value: '选项2',
label: '双皮奶'
}, {
value: '选项3',
label: '蚵仔煎'
}, {
value: '选项4',
label: '龙须面'
}, {
value: '选项5',
label: '北京烤鸭'
}],
value:''
};
},
components: {
@@ -133,6 +164,9 @@ export default {
Screenfull
},
methods: {
test(){
this.show = false
},
...mapActions("user", ["LoginOut"]),
totalCollapse() {
this.isCollapse = !this.isCollapse;
@@ -321,7 +355,7 @@ $mainHight: 100vh;
&:not(.el-menu--collapse) {
width: 220px;
}
}
.el-menu--collapse{
li{
@@ -374,8 +408,12 @@ $mainHight: 100vh;
vertical-align: middle;
}
}
.el-input__inner{
border: none;
border-bottom: 1px solid #606266;
}
.screenfull{
display: inline-block;
}
</style>
@@ -78,11 +78,11 @@ export default {
fieldJson:[ { required: true, message: '请输入field格式化json', trigger: 'blur' }],
fieldType:[ { required: true, message: '请选择field数据类型', trigger: 'blur' }]
}
}
}
},
}
</script>
<style lang="scss">
</style>
</style>
+12 -10
View File
@@ -28,7 +28,6 @@
width="280">
</el-table-column>
<el-table-column
v-test
prop="fieldName"
label="Field名"
width="280">
@@ -117,12 +116,6 @@ export default {
components:{
FieldDialog
},
directives:{
'test':function(el,binding,vnode){
/** el可以获取当前dom节点,并且进行编译,也可以操作事件 **/
/** binding指的是一个对象,一般不用 **/ /** vnode 是 Vue 编译生成的虚拟节点 **/
console.log(el.click()); //获取v-model的值
}},
methods:{
editAndAddField(item){
this.dialogFlag = true
@@ -135,9 +128,14 @@ export default {
this.dialogMiddle = JSON.parse(JSON.stringify(fieldTemplate))
}
},
regExp(ele){
return ele.replace(/\s*/g,"")
},
enterDialog(){
console.log(this.dialogMiddle.fieldName.replace(/\s*/g,""))
this.dialogMiddle.fieldName = this.regExp(this.dialogMiddle.fieldName)
this.dialogMiddle.fieldDesc = this.regExp(this.dialogMiddle.fieldDesc)
this.dialogMiddle.fieldJson = this.regExp(this.dialogMiddle.fieldJson)
this.dialogMiddle.columnName = this.regExp(this.dialogMiddle.columnName)
this.$refs.fieldDialog.$refs.fieldDialogFrom.validate((valid) => {
if (valid) {
this.dialogMiddle.fieldName = toUpperCase(this.dialogMiddle.fieldName)
@@ -170,7 +168,11 @@ export default {
}
this.$refs.autoCodeForm.validate(async (valid) => {
if (valid) {
this.form.structName = toUpperCase(this.form.structName)
this.form.structName = this.regExp(this.form.structName)
this.form.structName = toUpperCase(this.form.structName)
this.form.abbreviation = this.regExp(this.form.abbreviation)
this.form.packageName = this.regExp(this.form.packageName)
if(this.form.structName == this.form.abbreviation){
this.$message({
type:"error",