bigScreen大屏配置选项无法和画布中心的展示联动解决

01-06 37阅读 0评论

bigScreen大屏配置选项无法和画布中心的展示联动解决

?=

问题1. 大屏配置选项无法和画布中心的展示联动

解决过程:

大概找了2天时间,各种排查数据绑定的问题?文件传参的问题?找的过程中差点没把自己气死😤😤

最后发现是数据改变之后,没有把改变的值更新到右侧的属性配置区。

画布中心首次加载的时候,从config中读取选项值,并且触发右侧的设置

下一次,通过右侧更改属性值的时候,将值传给dashboard,①子组件监听dashboard的变化,实时更新;② dashboard也要赋值给配置项wIDGetOptiON,以便右侧可以保持一致。

代码学习:

// 源代码: widgetValueChanged(key, val) { // 更新大屏属性 if (this.screencode === 'screen') { let newsetup = []; this.dashboard = common.deepclone(val) this.widgetOptions.setup.forEach(el => { if (el.name === 'width') { el.value = this.dashboard.width } else if (el.name === 'height') { el.value = this.dashboard.height } else if (el.name === 'title') { el.value = this.dashboard.title } else if (el.name === 'backgroundColor') { el.value = this.dashboard.backgroundColor } else if (el.name === 'Description') { el.value = this.dashboard.description } else if (el.name === 'backgroundimage') { el.value = this.dashboard.backgrounDImage } newSetup.push(el); }); this.widgetOptions.setup = newSetup; } else { // 更新组件属性 for (let i = 0; i < this.widgeTS.length; i++) { if (this.widgetIndex === i) { this.widgets[i].value[key] = common.deepClone(val); seTDefaultValue(this.widgets[i].options[key], val); } } } }, 

代码优化

想将一个对象中的属性依次更新给数组对象中的属性

bigScreen大屏配置选项无法和画布中心的展示联动解决

widgetValueChanged(key, val) { // 更新大屏属性 if (this.screenCode === 'screen') { let newSetup = []; this.dashboard = common.deepClone(val) this.widgetOptions.setup.forEach(el => { if (this.dashboard.hasOwnProperty(el.name)) { el.value = this.dashboard[el.name] } newSetup.push(el) }) this.widgetOptions.setup = newSetup; } else { // 更新组件属性 for (let i = 0; i < this.widgets.length; i++) { if (this.widgetIndex === i) { this.widgets[i].value[key] = common.deepClone(val); setDefaultValue(this.widgets[i].options[key], val); } } } },

以上就是bigScreen大屏配置选项无法和画布中心的展示联动解决的详细内容,更多关于bigScreen大屏配置画布联动的资料请关注云初冀北其它相关文章!

免责声明
本站提供的资源,都来自网络,版权争议与本站无关,所有内容及软件的文章仅限用于学习和研究目的。不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,我们不保证内容的长久可用性,通过使用本站内容随之而来的风险与本站无关,您必须在下载后的24个小时之内,从您的电脑/手机中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。侵删请致信E-mail:Goliszhou@gmail.com
$

发表评论

表情:
评论列表 (暂无评论,37人围观)

还没有评论,来说两句吧...