已为我提供了一个自定义的Web元素,该元素是使用Angular 6构建的,可用于我正在研究的项目中。它带有一个普通的HTML页面来显示元素的工作情况:
<custom-component></custom-component>
<script src="customComponents.js"></script>
这很好,但是当我尝试在自己的PWA项目(围绕Polymer团队的lit-element构建)中使用此网络元素时,在尝试加载该元素时(在我的开发环境-{ {1}}):
polymer serve
要解决此问题,我尝试将组件加载到index.html中,以便任何需要它的页面/元素都可以使用-这部分成功,因为Web元素未加载Uncaught (in promise) SyntaxError: Unexpected eval or arguments in strict mode
相关错误,但显然它无法正确绑定到页面(不知道这是什么意思,除了我发现了大量与计时器事件和动画有关的错误)
在我看来,我得到的解决方法在2018年并不正确。建议在页面呈现后动态加载脚本
strict
可以工作的地方,不再有错误,并且组件可以正常工作。
我只是不认为这是正确的处理方式-我将不得不在某个时候卸载它,因为我希望在整个PWA中都可以多次卸载它。
因此,我愿意就更好的方法提出想法和建议。
我可以访问组件存储库,并且(尽管我几乎不了解Angular),但我仍在努力寻找如何使Angular构建过程输出严格的代码(没有 _didRender() {
var script = document.createElement('script');
script.src = "customComponents.js";
document.getElementsByTagName('head')[0].appendChild(script);
和{{1 }})-有指针吗?