我在Angular 2应用程序之上使用Google Polymer,我需要在Polymer JavaScript中确定是否运行Angular 2中的页面。我曾在if (window.ng) {}
工作的地方看过,直到昨天它还有我。现在,它可以在localhost
中运行,但已停止在我的测试和生产服务器上运行。现在,window.ng
未定义。
当我调试Polymer JavaScript并慢慢地执行它时,我收到以下控制台错误:
(WEB_PAGE context) Lazy require of app.binding did not set the binding field
(WEB_PAGE context) Lazy require of webstore.binding did not set the binding field
(WEB_PAGE context) Lazy require of runtime.binding did not set the binding field
非常感谢任何帮助!
答案 0 :(得分:0)
Angular会自动将属性ng-version
添加到根组件的标记中,因此您可以像这样解析该属性的值,假设根组件是body
const majorVersion = parseInt(document.body.children[0].getAttribute('ng-version').split('.')[0])
console.log(majorVersion >= 2);