Skip to content

Commit

Permalink
perf: 组件代码优化
Browse files Browse the repository at this point in the history
  • Loading branch information
BoBoooooo committed Dec 7, 2020
1 parent c1aed5a commit 4023818
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 11 deletions.
9 changes: 5 additions & 4 deletions packages/form-designer/src/FormDesignerDialog.vue
Original file line number Diff line number Diff line change
Expand Up @@ -200,10 +200,11 @@
</td>
</tbody>
</table>
<el-button type="success"
@click="handleGenerateKey(true)">自动生成表单(根据数据库字段初始化,默认一行两列)</el-button>
<!-- <el-button type="primary"
@click="handleGenerateKey()">自动绑定key(已有表单的情况)</el-button> -->
<el-tooltip title="根据数据库字段初始化,默认一行两列">
<el-button type="success"
style="float: right"
@click="handleGenerateKey(true)">自动生成表单</el-button>
</el-tooltip>
</cus-dialog>
</el-container>
</el-dialog>
Expand Down
12 changes: 7 additions & 5 deletions packages/form-designer/src/GenerateForm.vue
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@
<template>
<div class="table-form-wrapper">
<el-form ref="generateForm"
:class='{"table-form":data.config.isTableClass}'
:class='{"table-form": data.config && data.config.isTableClass}'
:model="models"
:rules="rules"
:label-position="data.config.labelPosition"
:label-width="data.config.labelWidth?data.config.labelWidth+ 'px':'140px'"
:label-position="data.config && data.config.labelPosition"
:label-width="data.config && data.config.labelWidth?data.config.labelWidth+ 'px':'140px'"
size="small">
<!-- 遍历从父组件传入的data,data下有list和config两个属性,list下的每个对象是表示一行组件的集合 -->
<template v-for="item in this.data.list">
Expand Down Expand Up @@ -226,8 +226,10 @@ export default class GenerateForm extends Vue {
tableSelections: any = {};

created() {
// 根据数据结构生成给子组件的数据源
this.generateModle(this.data.list);
if (this.data.list) {
// 根据数据结构生成给子组件的数据源
this.generateModle(this.data.list);
}
}

getTableSelection($event, item) {
Expand Down
6 changes: 4 additions & 2 deletions packages/form-designer/src/GenerateFormItem.vue
Original file line number Diff line number Diff line change
Expand Up @@ -397,7 +397,8 @@ export default class GenerateFormItem extends Vue {
created() {
this.initData();
if (this.widget.type === 'table') {
this.$EventBus.$on(`refresh:subTable:${this.widget.model}`, () => {
// eslint-disable-next-line no-unused-expressions
this.$EventBus && this.$EventBus.$on(`refresh:subTable:${this.widget.model}`, () => {
this.$refs.table.tableReload();
});
}
Expand Down Expand Up @@ -690,7 +691,8 @@ export default class GenerateFormItem extends Vue {
}

beforeDestroy() {
this.$EventBus.$off(`refresh:subTable:${this.widget.model}`);
// eslint-disable-next-line no-unused-expressions
this.$EventBus && this.$EventBus.$off(`refresh:subTable:${this.widget.model}`);
}

@Watch('dataModel')
Expand Down

0 comments on commit 4023818

Please sign in to comment.