누구든지 라이브러리 나 이벤트를 구현하는 데 사용할 수있는 패턴을 알고 DOM을 거치지 않고 자바 스크립트 개체 그래프에 이벤트 버블 링? 간단히 말해서, 다른 클래스의 인스턴스를 포함하는 클래스의 인스턴스가 있고 그래프/체인을 버블 링 할 수있는 하위 클래스의 이벤트를 트리거하려고합니다.자바 스크립트 DOM 외부 개체 이벤트 및 이벤트 버블 링
제안 사항?
누구든지 라이브러리 나 이벤트를 구현하는 데 사용할 수있는 패턴을 알고 DOM을 거치지 않고 자바 스크립트 개체 그래프에 이벤트 버블 링? 간단히 말해서, 다른 클래스의 인스턴스를 포함하는 클래스의 인스턴스가 있고 그래프/체인을 버블 링 할 수있는 하위 클래스의 이벤트를 트리거하려고합니다.자바 스크립트 DOM 외부 개체 이벤트 및 이벤트 버블 링
제안 사항?
bob.js framework은 사용할 수있는 이벤트 메커니즘을 제공합니다. 이벤트의 객체로서 또는 bob.js에게 객체에 함수를 생성하도록 요청하십시오. 읽기가 더 깨끗 여기에 두 번째 접근 방법이다 (약 아래 버블 링주의 참조)
var DataListener = function() {
var fire = bob.event.namedEvent(this, 'received');
this.start = function(count) {
for (var i = 0; i < count; i++) {
fire(i + 1);
}
};
};
var listener = new DataListener();
listener.add_received(function(data) {
console.log('data received: ' + data);
});
listener.start(5);
// Output:
// data received: 1
// data received: 2
// data received: 3
// data received: 4
// data received: 5
약 가 버블 링 : bob.js는 (적어도 지금) 버블 링을 지원하지 않습니다. 게다가, 부모에 정의 된 이벤트가 자식에 정의 된 이벤트와 비슷할 경우 버블 링이 가능합니다 (DOM DOM 요소가있는 경우에는 그렇지만 항상 DOM 객체가 아닌 경우). 그러나 임시 해결 방법으로 자식 이벤트 리스너를 사용하여 부모 객체에서 이벤트를 발생시킬 수 있습니다. 즉, 효과는 버블 링과 같습니다.
나는 OP가 버블 링에 대해 구체적으로 질문했다고 생각합니다. – Bergi
당신이 눈치 챘을 때 나는 버블 링에 대한 대답도 언급했습니다. – Tengiz
예, 라이브러리가 지원하지 않습니다 ... 물론 모든 이벤트/pubsub 라이브러리에서'child.addListener (parent.trigger)'에 의해 버블 링을 모방 할 수 있습니다 :-) – Bergi