update 更新dialogForm的关联监听方案
This commit is contained in:
		@@ -130,10 +130,25 @@ export default {
 | 
				
			|||||||
			const promiseList = [];
 | 
								const promiseList = [];
 | 
				
			||||||
			this.rows.forEach((cols) => {
 | 
								this.rows.forEach((cols) => {
 | 
				
			||||||
				cols.forEach(async (opt) => {
 | 
									cols.forEach(async (opt) => {
 | 
				
			||||||
 | 
										if (opt.onChange) {
 | 
				
			||||||
 | 
											this.$watch(`form.${opt.prop}`, {
 | 
				
			||||||
 | 
												handler: (val) => {
 | 
				
			||||||
 | 
													this.$emit(opt.onChange.emit, val);
 | 
				
			||||||
 | 
												},
 | 
				
			||||||
 | 
												immediate: true,
 | 
				
			||||||
 | 
											});
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
										if (opt.listen) {
 | 
				
			||||||
 | 
											// 注册监听时间
 | 
				
			||||||
 | 
											this.$on(opt.listen, (val) => {
 | 
				
			||||||
 | 
												alert(val);
 | 
				
			||||||
 | 
											});
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
					if (opt.value) {
 | 
										if (opt.value) {
 | 
				
			||||||
						// 默认值
 | 
											// 默认值
 | 
				
			||||||
						this.form[opt.prop] = opt.value;
 | 
											this.form[opt.prop] = opt.value;
 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
					if (opt.options) {
 | 
										if (opt.options) {
 | 
				
			||||||
						this.optionListOf[opt.prop] = opt.options;
 | 
											this.optionListOf[opt.prop] = opt.options;
 | 
				
			||||||
					} else if (opt.url) {
 | 
										} else if (opt.url) {
 | 
				
			||||||
@@ -184,7 +199,7 @@ export default {
 | 
				
			|||||||
</script>
 | 
					</script>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<style scoped lang="scss">
 | 
					<style scoped lang="scss">
 | 
				
			||||||
.el-date-editor, 
 | 
					.el-date-editor,
 | 
				
			||||||
.el-select {
 | 
					.el-select {
 | 
				
			||||||
	width: 100%;
 | 
						width: 100%;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -83,18 +83,21 @@
 | 
				
			|||||||
						// },
 | 
											// },
 | 
				
			||||||
					],
 | 
										],
 | 
				
			||||||
					[
 | 
										[
 | 
				
			||||||
						{
 | 
											// 此方案必须,工段(含listen)字段必须在产线字段(含onChange)之前
 | 
				
			||||||
							select: true,
 | 
					 | 
				
			||||||
							label: '产线',
 | 
					 | 
				
			||||||
							url: '/base/production-line/listAll',
 | 
					 | 
				
			||||||
							prop: 'productionLineId',
 | 
					 | 
				
			||||||
							rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
 | 
					 | 
				
			||||||
						},
 | 
					 | 
				
			||||||
						{
 | 
											{
 | 
				
			||||||
							select: true,
 | 
												select: true,
 | 
				
			||||||
							label: '工段',
 | 
												label: '工段',
 | 
				
			||||||
							url: '/base/workshop-section/listAll',
 | 
												url: '/base/workshop-section/listAll',
 | 
				
			||||||
							prop: 'sectionId',
 | 
												prop: 'sectionId',
 | 
				
			||||||
 | 
												listen: 'productionLineChange', // 对应上面 emit
 | 
				
			||||||
 | 
												rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												select: true,
 | 
				
			||||||
 | 
												label: '产线',
 | 
				
			||||||
 | 
												url: '/base/production-line/listAll',
 | 
				
			||||||
 | 
												prop: 'productionLineId',
 | 
				
			||||||
 | 
												onChange: { emit: 'productionLineChange' },
 | 
				
			||||||
							rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
 | 
												rules: [{ required: true, message: '不能为空', trigger: 'blur' }],
 | 
				
			||||||
						},
 | 
											},
 | 
				
			||||||
					],
 | 
										],
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user