首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与polymer.json中定义的shell相比,捆绑包组件位于不同的供应商html中

与polymer.json中定义的shell相比,捆绑包组件位于不同的供应商html中
EN

Stack Overflow用户
提问于 2017-02-13 16:13:25
回答 1查看 223关注 0票数 0

我正在尝试通过聚合物cli捆绑我的聚合物应用程序。我的应用程序将一个简单页面的数据提升到275kb。

在我的polymer.json文件中,我使用src/ my -app.html作为外壳将我的所有自定义聚合物元素分段。问题是在构建我的应用程序之后,我的src/ my -app.html在捆绑的文件夹中有273kb的大小。考虑到我将Angular放在一边并做出反应的事实,这是一个很大的大小,只是为了获得更少的包(供应商包)大小和更多的块文件来进行延迟加载。我希望聚合物可以给我单独的供应商捆绑包,但我无法实现这一点。

我试着在polymer.json - "bower_components/polymer/polymer.html"的片段数组中写这段代码。我在sourceGlobs数组中编写了"bower_components/**/*"。我试着重新构建。我希望在我的构建中能得到一个单独的polymer.html文件。但是我在终端中遇到了几个错误,我的src/ my -app.html仍然是273kb。

终端显示的错误为:

代码语言:javascript
复制
    warn:    Unable to optimize .js file /home/local/JASPERINDIA/vineet.dev/projects/polymer-starter-vin/bower_components/marked-element/demo/index.html_script_0.js 
{ err: 
   { message: 'SyntaxError: Unexpected character \'#\'',
     filename: 0,
     line: 2,
     col: 10,
     pos: 11,
     stack: 'Error\n    at new JS_Parse_Error (eval at <anonymous> (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:1:1), <anonymous>:1547:18)\n    at js_error (eval at <anonymous> (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:1:1), <anonymous>:1555:11)\n    at parse_error (eval at <anonymous> (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:1:1), <anonymous>:1679:9)\n    at Object.next_token [as input] (eval at <anonymous> (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:1:1), <anonymous>:1951:9)\n    at next (eval at <anonymous> (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:1:1), <anonymous>:2080:25)\n    at Object.parse (eval at <anonymous> (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:1:1), <anonymous>:2066:15)\n    at addFile (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:72:33)\n    at /usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:81:17\n    at Array.forEach (native)\n    at Object.exports.minify (/usr/local/lib/node_modules/polymer-cli/node_modules/uglify-js/tools/node.js:79:26)' } }

有几个与上述相同类型的错误。

我知道我可以gzip,但这不是一个令人满意的解决方案。

任何帮助都将不胜感激。谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-02-14 01:29:17

我没有一个具体的答案来解决您对shell文件大小的担忧,但我有一些建议。

  • polymer-build最近更新了to use a new and improved bundler,其中包括为共享依赖项创建单独的捆绑包(包括聚合物初学者工具包中捆绑在my-app.html中的依赖项)。这可能是值得尝试的即将到来的版本的聚合物命令行界面,它有这个新的捆绑器。
  • 你不应该指定polymer.html作为片段。片段是用于延迟加载的视图的。例如,在聚合物初学者工具包中,my-view1.htmlmy-view2.htmlmy-view3.html等都延迟加载了importHref。这些文件不是显式地在HTML导入中,因此它们必须在polymer.json.
  • You中的fragments下列出,而不应该在sourceGlobs (或sources)下列出bower_components/**/*。这将告诉polymer-build将整个bower_components目录复制到构建输出中,包括devDependencies (运行时不需要)。
  • 您注意到的警告是一个良性的Uglify错误(GitHub issue)。构建仍将成功完成,但受Uglify错误影响的文件将不会具有缩小的JavaScript。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42199395

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档