我似乎找不到一种简单的方法来将所有文件从 Polymer 复制到使用 grunt-bower-task 。
grunt.initConfig({
bower: {
install: {
options: {
targetDir: 'wwwroot/lib',
layout: 'byComponent',
install: true,
copy: true,
verbose: true,
cleanTargetDir: false,
bowerOptions: {}
}
}
}
我知道只有在每个元素的 bower.json 文件中定义的
main
文件会被复制。我也知道我可以在我自己的 bower.json 中放置一个 exportsOverride
部分以包含更多这样的文件 - "exportsOverride": {
"*": {
"": "*.*",
"demo": "demo/*.*",
"test": "test/*.*"
}
}
但这并不涵盖所有情况,因为某些元素具有更多子文件夹,而不仅仅是演示和测试。我是否必须手动查找它们并将它们的路径添加到
exportsOverride
,或者有一种我忽略的简单方法? 最佳答案
讨厌提供失败的样本....
FWIW 最近,我遇到了非常相似的问题……成功了但失败了
我所做的是放弃将第一个 polymer 项目的“dist”标签中的所有内容弄平的尝试。相反,我只是在离开 HTTP2 类型文件结构的一两个元素上运行 minify/ugly(深而许多,目录/文件。)
// the process belo NG . Manual edit needed on "polymer-min.html" go end and chg the js file name
copy: {
main: {
files: [
// includes files within path
{expand: true, src: ['*html'], dest: 'dest/', filter: 'isFile'},
// includes files within path and its sub-directories
{expand: true, src: ['js/**', 'images/**' ,'css/**' ,'elements/**' ,'bower_components/**'], dest: 'dest/'},
{ src: ['tmp/csp/build-csp.html'], dest: 'dest/bower_components/cast-button-polymer/cast-button-polymer-min.html',
filter: 'isFile',
options: {
process: function (content, srcpath) {
return content.replace(/build-csp.js/g,"cast-button-polymer-min.js");
},
},
},
{ src: ['tmp/csp/build-csp-min.js'], dest: 'dest/bower_components/cast-button-polymer/cast-button-polymer-min.js', filter: 'isFile'},
],
},
},
关于gruntjs - grunt-bower-task 和 Polymer,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30511033/