64 lines
2.3 KiB
Vue
64 lines
2.3 KiB
Vue
<template>
|
|
<el-col :sm="24" :md="pzoption.mdwidth">
|
|
<i class="iconfont icon-shezhi pull-right widgetset hidden-print" @click.stop="dialogInputVisible = true"></i>
|
|
<i class="iconfont icon-shanchu pull-right widgetdel hidden-print" @click.stop="delWid(pzoption.wigdetcode)"></i>
|
|
<el-form-item :label="pzoption.title" :prop="'wigetitems.' + index + '.value'">
|
|
<el-input :placeholder="childpro.placeholder" v-model="pzoption.value" size="small" clearable>
|
|
</el-input>
|
|
</el-form-item>
|
|
<el-dialog title="组件属性" :visible.sync="dialogInputVisible">
|
|
<el-form :model="childpro">
|
|
|
|
<el-form-item label="占位符">
|
|
<el-input v-model="childpro.placeholder" autocomplete="off"></el-input>
|
|
</el-form-item>
|
|
</el-form>
|
|
</el-dialog>
|
|
</el-col>
|
|
|
|
</template>
|
|
<script>
|
|
module.exports = {
|
|
props: ['pzoption', 'index'],
|
|
data: function () {
|
|
return {
|
|
dialogInputVisible: false,
|
|
childpro: {
|
|
placeholder: "占位符"
|
|
}
|
|
}
|
|
},
|
|
methods: {
|
|
delWid: function (wigdetcode) {
|
|
// 子组件中触发父组件方法ee并传值cc12345
|
|
this.$root.nowwidget = {};
|
|
_.remove(this.$root.FormData.wigetitems, function (obj) {
|
|
return obj.wigdetcode == wigdetcode;
|
|
});
|
|
},
|
|
senddata: function () {
|
|
this.pzoption.childpro = JSON.parse(JSON.stringify(this.childpro));
|
|
}
|
|
},
|
|
mounted: function () {
|
|
var chi = this;
|
|
chi.$nextTick(function () {
|
|
if (chi.$root.addchildwig) {
|
|
chi.$root.addchildwig();//不能缺少
|
|
}
|
|
if (chi.pzoption.childpro.placeholder) {
|
|
chi.childpro = chi.pzoption.childpro
|
|
}
|
|
})
|
|
|
|
},
|
|
watch: {
|
|
childpro: { //深度监听,可监听到对象、数组的变化
|
|
handler(newV, oldV) {
|
|
this.senddata();
|
|
},
|
|
deep: true
|
|
}
|
|
}
|
|
};
|
|
</script> |