将bower组件捆绑在单独的供应商html中,而不是在polymer.json中定义的shell中

将bower组件捆绑在单独的供应商html中,而不是在polymer.json中定义的shell中,polymer,polymer-cli,Polymer,Polymer Cli,我正试图通过Polymer cli捆绑我的Polymer应用程序。我的应用程序为一个简单的页面提供高达275kb的数据 在我的polymer.json文件中,我用src/my-app.html作为shell分割了所有自定义polymer元素。问题是,在构建我的应用程序之后,我的src/my-app.html在捆绑文件夹中的大小为273kb。这是一个很大的尺寸,考虑到这样一个事实,我将Angular和React放在一边,只是为了实现更少的bundlevendor bundle大小和更多的分块文件以

我正试图通过Polymer cli捆绑我的Polymer应用程序。我的应用程序为一个简单的页面提供高达275kb的数据

在我的polymer.json文件中,我用src/my-app.html作为shell分割了所有自定义polymer元素。问题是,在构建我的应用程序之后,我的src/my-app.html在捆绑文件夹中的大小为273kb。这是一个很大的尺寸,考虑到这样一个事实,我将Angular和React放在一边,只是为了实现更少的bundlevendor bundle大小和更多的分块文件以获得懒散的加载。我希望polymer能给我单独的供应商捆绑,但我没能做到这一点

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

终端中显示的错误有:

    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,但那不是令人满意的解决方案


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

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

polymer build最近进行了更新,其中包括为共享依赖项创建单独的捆绑包,包括在polymer Starter Kit的my-app.html中捆绑的依赖项。可能值得尝试即将推出的Polymer CLI版本,该版本包含此新捆绑包

不应将polymer.html指定为片段。片段用于延迟加载的视图。例如,在Polymer初学者工具包中,my-view1.html、my-view2.html、my-view3.html等都是惰性加载的importHref。这些文件不是在HTML导入中显式显示的,因此它们必须在polymer.json中的片段下列出

您不应在sourceGlobs或sources下列出bower_组件/***。这告诉polymer build将整个bower_components目录(包括运行时不需要的devdependency)复制到生成输出

你注意到的警告是一个善意的丑陋的错误。构建仍然成功完成,但是受Uglify错误影响的文件将没有缩小的JavaScript