我试图从vanilla javascript获取对象标题并在我的angular 2组件上检索它。目前我将变量保存到localStorage
,但我不认为这是一种很好的方法。
单击按钮时,要将变量保存到localStorage
,按钮位于iframe中。
有人能指出我正确的方向如何实现这个目标吗?
答案 0 :(得分:6)
您可以在Angular中发出事件并收听它
window.dispatchEvent(new CustomEvent('js-value', { bubbles: true, detail: 'someValue' });
然后听Angular
export class MyComponent {
constructor() {}
@HostListener('window:js-value', ['$event.detail'])
onJsValue(val) {
console.log(val);
}
}
这样您也不会遇到更改检测问题,因为当调用事件处理程序时,Angular会自行更改检测。