Ken*_*ker 16 dependencies copy npm gruntjs
我虽然在某处读到了package.json的"main"属性可以用来复制"dist"或部署所需的文件.我认为它有一个咕噜咕噜的任务,但我没有看到任何可以帮助我或指导我的事情.我现在复制node_modules下的所有内容,但我当然不需要分发库示例代码.
是否有一个grunt任务或任何关于如何正确使用grunt-contrib-copy的指令,只是希望从config对象的标准pkg对象(解析的package.json文件)中复制node_module依赖的文件?
Sin*_*hus 12
package.json没有足够的信息让您知道要包含什么.您将不得不解析所有require语句,但即便如此,也有一些情况无法检测,例如模块加载资源等.
正确的方法是让包作者忽略使用文件不需要的.npmignore文件甚至更好,使用package.json中的files属性来明确定义包中应包含的文件.
不幸的是,大多数包裹作者都是懒惰的,不打扰任何这个......
我鼓励您使用该files属性打开有关模块的PR .
Fáb*_*nda 10
您可以:
1)使用复制任务将每个相关文件复制到dest目录:
copy:
js:
files: [
{
expand: true,
cwd: 'node_modules/jquery',
src: 'jquery.min.js',
dest: 'www/js'
},
{
expand: true,
cwd: 'node_modules/jquery-mobile-bower/js',
src: 'jquery.mobile-*.min.js',
dest: 'www/js'
}
]
Run Code Online (Sandbox Code Playgroud)
jquery.min.js和jquery.mobile-xyzmin.js将被复制到www/js目录.
2)使用concat任务将所有文件连接到单个dest文件(用于生成唯一的javascript/stylesheets文件)
concat:
options:
separator: ';'
js:
dest: 'www/js/lib.js'
src: [
'node_modules/jquery/jquery.min.js',
'node_modules/jquery-mobile-bower/js/jquery.mobile-*.min.js'
]
Run Code Online (Sandbox Code Playgroud)
jquery.min.js和jquery.mobile-xyzmin.js将合并为一个www/js/lib.js文件,以分号分隔.
| 归档时间: |
|
| 查看次数: |
10443 次 |
| 最近记录: |