我不知道我必须在这里粘贴代码的哪些部分,但我的情况如下:
在Chrome和FireFox中开箱即用,不在IE中工作(空白页,没有错误)。
我在DOM Explorer中看到的是app元素未加载:它显示为<my-app></my-app>
我还尝试在Cloud Shell控制台上全局安装polymer-cli,重新启动App Service,但没有运气。
在index.html文件中,相关部分是通常的内容:
<script src="/bower_components/webcomponentsjs/webcomponents-loader.js"></script>
<link rel="import" href="/src/my-app.html">
然后我还尝试引入:
<link rel="import" href="/bower_components/polymer/polymer-element.html">
但又一次,没有运气。
当问题出现在一个浏览器上时,这真的是一场噩梦! :-(
最后一件事:如果我在本地主目录上运行polymer serve
,在本地es5-bundled
目录上运行,那么每个人都在IE上工作......所以问题似乎只在我尝试时出现在App Service上运行应用程序!
关于Aaron Chen的请求(感谢您的关注,Aaron!:-))我补充说,经过很长一段时间我收到了很多错误(我再说一次,只在IE中):
我现在想的是,以任何方式配置AppService不应该是一个问题:默认情况下,我正在谈论一堆&#39;&#39; HTML,CSS和JS文件,应该在任何服务器中开箱即用(实际上,它们完全在我的本地Node.js服务器上运行,部分在AppService上,Chrome和FireFox正在运行... )
另一个问题出现在我的脑海中:如果我可以用一个简单的polymer serve
启动我的本地应用程序,IE(11)如何需要ES5编译的Polymer 2应用程序版本(我的意思是,在源代码主目录上),本地适用于所有浏览器,包括 Internet Explorer?原始源代码是用ES6编写的!
我看到的第一个错误来自内部Polymer文件:/bower_components/polymer/lib/utils/case-map.html,我确信它是相同的文件服务在当地...所以它更令人费解......
我刚做了最后一次测试:我从主目录中部署了原始源代码,因此没有任何编译。最终结果是相同的:在Chrome和FireFox中工作,而不是在IE中工作,只有相同的错误。看起来编译阶段对IE行为没有任何影响(即使它仍在本地工作,在IE中,在源代码和编译版本上都有效)。
经过大量调查后,我将问题缩小到这个可能的错误,让我们看看其他人说的话...... https://github.com/Polymer/polymer-cli/issues/827
答案 0 :(得分:0)
Polymer 2.x及其原生元素是使用ES6编写的。您应该仅将编译后的ES5提供给不支持ES6的旧版浏览器。
在这种情况下,您可以使用以下命令将所有代码编译为ES5。
polymer build --js-compile
有关详细信息,请参阅Build for production。