我可能想多了,但这是我目前所拥有的:
elixir(function(mix) {
//mix.getCND();
mix.copy([
'jquery-1.11.0.min.js'
], 'resources/assets/js/cdn.js', '../../venturepro/cdn/js');
mix.scripts([
'resources/assets/js/cdn.js',
'resources/assets/js/core.js'
], 'public/assets/js/core.js');
});
我也尝试通过这样做来使用 gulp-cdnizer,但没有运气:
var gulp = require('gulp');
var cdnizer = require('gulp-cdnizer');
var Elixir = require('laravel-elixir');
var Task = Elixir.Task;
/*
|--------------------------------------------------------------------------
| Elixir Asset Management
|--------------------------------------------------------------------------
|
| Elixir provides a clean, fluent API for defining some basic Gulp tasks
| for your Laravel application. By default, we are compiling the Sass
| file for our application, as well as publishing vendor resources.
|
*/
Elixir.extend('getCDN', function() {
new Task('cdnizer', function () {
return gulp.src('')
.pipe(cdnizer([
{
package: 'jquery',
file: 'resources/assets/js/vendor/jquery.js',
cdn: 'https://cdn.venturepro.com/js/jquery-1.11.0.min.js'
}
]))
.pipe(gulp.dest("public/assets/js/"));
});
});
Elixir(function(mix) {
mix.getCDN();
// Combine all files into one single JS file
mix.scripts([
'resources/assets/js/vendor/jquery.js',
'resources/assets/js/core.js'
], 'public/assets/js/core.js');
});
它说它可以编译,但 cdnizer 似乎没有工作。我的资源目录中没有新文件。但是,我确实在我的公共目录中获得了 core.js 文件。
基本上,我们有大约 5 个不同的项目都在使用/共享文件。我们有很多常见的 javascript 文件被复制并粘贴到不同的项目中,因此我们希望以 CDN 的方式托管它们。所以我们有一个类似 cdn.website.com.. 的域,我们希望能够通过 Elixir 将文件从该域中提取到我们的项目中,但仍将根目录本地的项目特定文件组合在一起。
我以前用过 Elixir,但只用于本地文件。有没有办法通过不同的域来获取文件,或者像我尝试的那样,因为它们位于同一台服务器上,所以从 CDN 目录中的根目录中取出?
谢谢。