Home > PCB_Event > addNetEventListener
PCB_Event.addNetEventListener() method
This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
Add a net event listener
Signature
public addNetEventListener(id: string, eventType: 'all' | EPCB_NetEventType, callFn: (eventType: EPCB_NetEventType, props: [{ net: string }]) => void | Promise<void>, onlyOnce?: boolean): void;Parameters
Parameter | Type | Description |
|---|---|---|
id | string | Event ID, used to prevent duplicate event registration |
eventType | 'all' | EPCB_NetEventType | Event type |
callFn | (eventType: EPCB_NetEventType, props: [{ net: string }]) => void | Promise<void> | The callback function triggered when the event fires |
onlyOnce | boolean | (Optional) Whether to listen only once |
Returns
void
Remarks
Net select event only
When the net option is selected in the filter panel and a net is selected on the canvas
When a net is selected in Engineering Design -> Nets
the event will be triggered
Note: This API is only valid for extensions. Calling it in a standalone script environment will always throw Error
Example
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);2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20