Home > PCB_Event > addNetEventListener
PCB_Event.addNetEventListener() method
此 API 当前处于 BETA 预览状态,希望得到开发者的反馈。它的任何功能都可能在接下来的开发进程中被修改,请不要将它用于任何正式环境。
新增网络事件监听
签名
typescript
function addNetEventListener(
id: string,
eventType: 'all' | EPCB_NetEventType,
callFn: (eventType: EPCB_NetEventType, props: [{ net: string }]) => void | Promise<void>,
onlyOnce?: boolean,
): void;1
2
3
4
5
6
2
3
4
5
6
参数名
参数 | 类型 | 描述 |
|---|---|---|
id | string | 事件 ID,用以防止重复注册事件 |
eventType | 'all' | EPCB_NetEventType | 事件类型 |
callFn | (eventType: EPCB_NetEventType, props: [{ net: string }]) => void | Promise<void> | 事件触发时的回调函数 |
onlyOnce | boolean | (可选) 是否仅监听一次 |
返回值
void
备注
网络选中事件仅
①在过滤面板选中网络选项并在画布选中网络时
②在工程设计 -> 网络内选中网络时
会被触发
注意:本接口仅扩展有效,在独立脚本环境内调用将始终 throw Error
示例
javascript
const listenerId = '嘉立创示例_net_event';
// 1. 注册网络事件监听,eventType 用 'all' 接收全部网络事件
eda.pcb_Event.addNetEventListener(
listenerId,
'all',
(eventType, props) => {
// 回调在网络选中变化时触发;props 是网络信息数组
console.log('netEvent:', eventType, JSON.stringify(props));
},
false
);
// 2. 回读确认注册成功
const registered = eda.pcb_Event.isEventListenerAlreadyExist(listenerId);
console.log('registered:', registered);
// 3. 清理监听
const removed = eda.pcb_Event.removeEventListener(listenerId);
console.log('removed:', removed);1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20