空间/系统组态类事件
组态监听母页面发送的组态显示/隐藏事件,联动组态页中设备图标进行显示/隐藏
- 关联组件:
组态工具系统组件库中所有组件
- 事件格式:
{
"direction": "import",
"type": "baPageVisible",
"data": {
"visibleProductIds": [
"${porduct_id1}",
"${porduct_id2}",
"allProducts"
],
"invisibleProductIds": [
"${porduct_id3}",
"${porduct_id4}",
"allProducts"
]
}
}
- 参数说明:
type:消息类型(baPageVisible为组态显示/隐藏)
visibleProductIds:需要显示的产品ID列表
invisibleProductIds: 需要隐藏的产品ID列表
若产品id传“allProducts”,则表示组态图中所有产品ID
若某productId既在可见产品ID列表中,又在不可见产品ID列表中,组态图将对该产品对应组件进行显示,而不进行隐藏。
- 处理样例:
this.visible = [];
this.invisible = [];
this.productList.forEach(item => {
if (item.visible) {
this.visible.push(item.product_id);
} else {
this.invisible.push(item.product_id);
}
});
if (!this.visible.length) {
this.invisible = ['allProducts'];
}
if (!this.invisible.length) {
this.visible = ['allProducts'];
}
let iframeEl = document.getElementById("BaPage");
iframeEl.contentWindow.postMessage(
{
type: 'bastudioVisible',
data: {
visibleProductIds: this.visible,
invisibleProductIds: this.invisible
}
},
'http://localhost:8082'
);