这里的答案完全取决于您如何在 Gulp 构建中打包文件。我现在仍在解决同样的问题,但这里有一个提示可能会有所帮助。
在我的例子中,我使用main-bower-files 插件来读取我的 Bower 配置,然后从我使用 Bower 安装的所有依赖项中返回所有主要 JS 文件的流。它看起来像这样:
var mainBowerFiles = require('main-bower-files');
gulp.task('vendor-src', function () {
return gulp.src(mainBowerFiles('**/*.js')
.pipe(uglify())
.pipe(concat('main.min.js'))
.pipe(gulp.dest('dist/'))
});
不幸的是,这不会提取任何安装在我的 bower_components 目录中的 TinyMCE 文件,因为通过 Bower 安装的“tinymce”没有附带 package.json 文件。我认为这是因为您可以选择使用常规版本和 jQuery 版本的 TinyMCE,它们都在包中。
我必须从上面更改我的 Gulp 任务以获取我想要的 TinyMCE 源代码(jQuery 版本)。该版本如下所示:
var mainBowerFiles = require('main-bower-files');
gulp.task('vendor-src', function () {
return gulp.src(
mainBowerFiles('**/*.js', {
"overrides": {
"tinymce": {
"main": ["tinymce.jquery.js", "plugins/**/*.js", "themes/**/*.js"]
}
})
.pipe(uglify())
.pipe(concat('main.min.js'))
.pipe(gulp.dest('dist/'))
});
这将包括所有与 TinyMCE 关联的 JS 文件,并将它们添加到“主要凉亭文件”列表中。
这只是部分解决方案,因为您还必须选择 TinyMCE CSS 和字体文件。然后,如果您的构建完全不同,或者您没有使用 main-bower-files 插件,这也可能无济于事。