Gruntfile 的这一部分是否将多个文件合并为一个文件?
Does this part of Gruntfile combine multiple files to one?
我有一个包含以下内容的 Grunt 文件:
module.exports = function(grunt) {
// require('load-grunt-tasks')(grunt);
/* global process */
// configures browsers to run test against
// any of [ 'PhantomJS', 'Chrome', 'Firefox', 'IE']
var TEST_BROWSERS = ((process.env.TEST_BROWSERS || '').replace(/^\s+|\s+$/, '') || 'PhantomJS').split(/\s*,\s*/g);
// project configuration
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
config: {
app: 'app',
sources: 'lib',
tests: 'test'
},
release: {
options: {
tagName: 'v<%= version %>',
commitMessage: 'chore(project): release v<%= version %>',
tagMessage: 'chore(project): tag v<%= version %>'
}
},
browserify: {
options: {
browserifyOptions: {
builtins: false
},
bundleOptions: {
detectGlobals: false,
insertGlobalVars: [],
debug: true
}
},
watch: {
files: {
'<%= config.app %>/bpmn-viewer.js': [ '<%= config.app %>/bpmn.js', 'index.js' ]
},
options: {
watch: true
}
},
standaloneViewer: {
files: {
'<%= config.app %>/bpmn-viewer.js': [ '<%= config.app %>/bpmn.js', 'index.js' ]
},
options: {
alias: [
'jquery:jquery',
'lodash:lodash',
'index.js:bpmn-js-diffing',
'<%= config.app %>/bpmn.js:bpmn-js'
]
}
},
},
jsdoc: {
dist: {
src: [ '<%= config.sources %>/**/*.js' ],
options: {
destination: 'docs/api',
plugins: [ 'plugins/markdown' ]
}
}
}
});
// tasks
grunt.registerTask('test', [ 'karma:single' ]);
grunt.registerTask('auto-test', [ 'karma:unit' ]);
// grunt.registerTask('default', [ 'jshint', 'test', 'browserify:standaloneViewer', 'jsdoc' ]);
grunt.registerTask('default', [ ]);
};
我知道在这个文件的某个地方一定有一个缩小代码的表达式(我从别人那里继承了代码,所以我不知道它是如何工作的)。生成的文件名为 bpmn-viewer.js
.
行不行
standaloneViewer: {
files: {
'<%= config.app %>/bpmn-viewer.js': [ '<%= config.app %>/bpmn.js', 'index.js' ]
},
意味着文件 '<%= config.app %>/bpmn.js', 'index.js'
应该合并到 <%= config.app %>/bpmn-viewer.js
?
如果可能,请提供描述它的文档的链接。
缺少一些信息,例如您分叉的项目和 package.json 依赖项。
幸运的是,我找到了 https://github.com/bpmn-io/bpmn-js-diffing,这可能就是您分叉的项目。请注意,这个项目很旧,它的依赖项也很旧,我必须修复它才能工作,所以单独的版本控制可能会改变我的结果。
我没有找到缩小的内容。文件 app/bpmn-viewer.js 是拼接结果。多个文件被合并到这个文件中,是的,但是只有 browserify header 总是在 bpmn-viewer.js.
中缩小
首先,您评论了 load-grunt-tasks 和“默认”grunt 任务,所以我不确定您是否真的 运行 这个 Gruntfile.js grunt。注释掉它是行不通的,因为据我所知,没有对 grunt.loadNpmTasks
的调用,没有任何加载指令就不会加载 grunt 插件。
现在看文档。你是对的,连接是由于 files
字段而发生的。这是 Grunts Task definition layout.
的一部分
Browserify 分析给定的文件并将它们合并为一个。这是抽象描述,更多内容在 browserify handbook.
还是要记住:你的fork项目版本太旧了。
所以这是我能找到的简短内容:
- 不,内容没有缩小
- Browserify header(已缩小)并将源映射内容添加到最终文件
如果你真的有精简内容,请提供package.json依赖和真正的运行Gruntfile.js.
我有一个包含以下内容的 Grunt 文件:
module.exports = function(grunt) {
// require('load-grunt-tasks')(grunt);
/* global process */
// configures browsers to run test against
// any of [ 'PhantomJS', 'Chrome', 'Firefox', 'IE']
var TEST_BROWSERS = ((process.env.TEST_BROWSERS || '').replace(/^\s+|\s+$/, '') || 'PhantomJS').split(/\s*,\s*/g);
// project configuration
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
config: {
app: 'app',
sources: 'lib',
tests: 'test'
},
release: {
options: {
tagName: 'v<%= version %>',
commitMessage: 'chore(project): release v<%= version %>',
tagMessage: 'chore(project): tag v<%= version %>'
}
},
browserify: {
options: {
browserifyOptions: {
builtins: false
},
bundleOptions: {
detectGlobals: false,
insertGlobalVars: [],
debug: true
}
},
watch: {
files: {
'<%= config.app %>/bpmn-viewer.js': [ '<%= config.app %>/bpmn.js', 'index.js' ]
},
options: {
watch: true
}
},
standaloneViewer: {
files: {
'<%= config.app %>/bpmn-viewer.js': [ '<%= config.app %>/bpmn.js', 'index.js' ]
},
options: {
alias: [
'jquery:jquery',
'lodash:lodash',
'index.js:bpmn-js-diffing',
'<%= config.app %>/bpmn.js:bpmn-js'
]
}
},
},
jsdoc: {
dist: {
src: [ '<%= config.sources %>/**/*.js' ],
options: {
destination: 'docs/api',
plugins: [ 'plugins/markdown' ]
}
}
}
});
// tasks
grunt.registerTask('test', [ 'karma:single' ]);
grunt.registerTask('auto-test', [ 'karma:unit' ]);
// grunt.registerTask('default', [ 'jshint', 'test', 'browserify:standaloneViewer', 'jsdoc' ]);
grunt.registerTask('default', [ ]);
};
我知道在这个文件的某个地方一定有一个缩小代码的表达式(我从别人那里继承了代码,所以我不知道它是如何工作的)。生成的文件名为 bpmn-viewer.js
.
行不行
standaloneViewer: {
files: {
'<%= config.app %>/bpmn-viewer.js': [ '<%= config.app %>/bpmn.js', 'index.js' ]
},
意味着文件 '<%= config.app %>/bpmn.js', 'index.js'
应该合并到 <%= config.app %>/bpmn-viewer.js
?
如果可能,请提供描述它的文档的链接。
缺少一些信息,例如您分叉的项目和 package.json 依赖项。
幸运的是,我找到了 https://github.com/bpmn-io/bpmn-js-diffing,这可能就是您分叉的项目。请注意,这个项目很旧,它的依赖项也很旧,我必须修复它才能工作,所以单独的版本控制可能会改变我的结果。
我没有找到缩小的内容。文件 app/bpmn-viewer.js 是拼接结果。多个文件被合并到这个文件中,是的,但是只有 browserify header 总是在 bpmn-viewer.js.
中缩小首先,您评论了 load-grunt-tasks 和“默认”grunt 任务,所以我不确定您是否真的 运行 这个 Gruntfile.js grunt。注释掉它是行不通的,因为据我所知,没有对 grunt.loadNpmTasks
的调用,没有任何加载指令就不会加载 grunt 插件。
现在看文档。你是对的,连接是由于 files
字段而发生的。这是 Grunts Task definition layout.
Browserify 分析给定的文件并将它们合并为一个。这是抽象描述,更多内容在 browserify handbook.
还是要记住:你的fork项目版本太旧了。
所以这是我能找到的简短内容:
- 不,内容没有缩小
- Browserify header(已缩小)并将源映射内容添加到最终文件
如果你真的有精简内容,请提供package.json依赖和真正的运行Gruntfile.js.