提交 6b0453a6 编写于 作者: tony001's avatar tony001

调整数据选择内敛视图组件

上级 594e420a
...@@ -101,7 +101,7 @@ export default class AppEmbedPicker extends Vue { ...@@ -101,7 +101,7 @@ export default class AppEmbedPicker extends Vue {
* @type {string} * @type {string}
* @memberof AppEmbedPicker * @memberof AppEmbedPicker
*/ */
@Prop() public valueItem?: string; @Prop() public valueItem!: string;
/** /**
* 关联视图名称 * 关联视图名称
...@@ -176,17 +176,28 @@ export default class AppEmbedPicker extends Vue { ...@@ -176,17 +176,28 @@ export default class AppEmbedPicker extends Vue {
if (!this.data) { if (!this.data) {
return; return;
} }
let formData:any = JSON.parse(this.data);
let arg: any = {}; let arg: any = {};
// 合并视图上下文参数和视图参数 // 合并视图上下文参数和视图参数
arg.param = JSON.parse(JSON.stringify(this.viewparams)); arg.param = JSON.parse(JSON.stringify(this.viewparams));
arg.context = JSON.parse(JSON.stringify(this.context)); arg.context = JSON.parse(JSON.stringify(this.context));
if(formData[this.name] && formData[this.valueItem]){
let selectItems:Array<any> = [];
let tempvalue: Array<any> = formData[this.valueItem].split(',');
let temptext: Array<any> = formData[this.name].split(',');
tempvalue.forEach((srfkey: any, index: number)=>{
selectItems.push({ srfmajortext : temptext[index], srfkey: srfkey });
});
arg.param.selectedData = selectItems;
this.$forceUpdate();
}
// 附加参数处理 // 附加参数处理
if (this.localContext && Object.keys(this.localContext).length >0) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext); let _context = this.$util.computedNavData(formData,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.localParam && Object.keys(this.localParam).length >0) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam); let _param = this.$util.computedNavData(formData,arg.context,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
this.viewdata = JSON.stringify(arg.context); this.viewdata = JSON.stringify(arg.context);
...@@ -257,12 +268,10 @@ export default class AppEmbedPicker extends Vue { ...@@ -257,12 +268,10 @@ export default class AppEmbedPicker extends Vue {
srfkey = srfkey.substring(0,srfkey.length-1); srfkey = srfkey.substring(0,srfkey.length-1);
srfmajortext = srfmajortext.substring(0,srfmajortext.length-1); srfmajortext = srfmajortext.substring(0,srfmajortext.length-1);
if (this.valueItem) { if (this.valueItem) {
let value = srfkey; this.$emit('formitemvaluechange', { name: this.valueItem, value: srfkey });
this.$emit('formitemvaluechange', { name: this.valueItem, value: value });
} }
if (this.name) { if (this.name) {
let value = srfmajortext; this.$emit('formitemvaluechange', { name: this.name, value: srfmajortext });
this.$emit('formitemvaluechange', { name: this.name, value: value });
} }
} }
} }
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册