MessagePortMain
MessagePortMain
은 메인 프로세스 측에서 DOM의 MessagePort
객체와 동일한 역할을 한다. DOM 버전과 유사하게 동작하지만, DOM의 EventTarget
시스템 대신 Node.js의 EventEmitter
이벤트 시스템을 사용한다는 차이점이 있다. 이는 port.onmessage = ...
나 port.addEventListener('message', ...)
대신 port.on('message', ...)
를 사용해 이벤트를 수신해야 함을 의미한다.
채널 메시징 사용에 대한 더 자세한 정보는 Channel Messaging API 문서를 참고한다.
MessagePortMain
은 EventEmitter이다.
Class: MessagePortMain
메인 프로세스에서 채널 메시징을 위한 포트 인터페이스
프로세스: 메인
이 클래스는 'electron'
모듈에서 직접 내보내지 않는다. Electron API의 다른 메서드 반환값으로만 사용할 수 있다.
인스턴스 메서드
port.postMessage(message, [transfer])
message
anytransfer
MessagePortMain[] (선택 사항)
포트를 통해 메시지를 보낸다. 필요에 따라 다른 브라우징 컨텍스트로 객체의 소유권을 이전할 수도 있다.
port.start()
포트에 대기 중인 메시지 전송을 시작한다. 이 메서드를 호출하기 전까지는 메시지가 대기 상태로 유지된다.
port.close()
포트를 연결 해제하여 더 이상 활성화되지 않도록 한다.
인스턴스 이벤트
이벤트: 'message'
반환값:
messageEvent
객체data
anyports
MessagePortMain[]
MessagePortMain 객체가 메시지를 받았을 때 발생한다.
이벤트: 'close'
MessagePortMain 객체의 원격 끝이 연결 해제될 때 발생한다.