Angular 2如何从index.html(脚本)调用组件方法?

时间:2018-04-19 11:09:50

标签: angular

我能够在index.html(角度2代码库)中捕获从银灯发出的事件,但我被困在如何将事件传递给组件方法。

1 个答案:

答案 0 :(得分:0)

我不确定你是否正在寻找什么,但让你的html事情发生这样的事情:

<script type="text/javascript">
    // Helper to create custom event with IE11 compatibility.
    function RsCustomEvent ( event, params ) {
        params = params || { bubbles: false, cancelable: false, detail: undefined };
        var evt = document.createEvent( 'CustomEvent' );
        evt.initCustomEvent( event, params.bubbles, params.cancelable, params.detail );
        return evt;
    }
    // Something happen, you want to fire your event.
    window.dispatchEvent(RsCustomEvent('myCustomEvent'));
</script>

然后在角度应用程序上,您可以像这样捕获它:

// on your Angular code (component, service, directive ...)
Observable.fromEvent(window,'myCustomEvent').subscribe(() => {
    // Do what ever you want
}));

重要信息:在您的应用初始化并完成订阅之后,请小心点击您的活动