0
しかし、私はサイト上のいずれかのページでノックアウトを使用しています。私は共有ビューにノックアウトを含めたくないし、デフォルトではすべてのファイルを1つのファイルにまとめるとJSファイルの1つがKOに依存するため、JSエラー "ko is undefined"が発生する。縮小化CSS/JS
メインの「site.min.css」にファイルを連結することなく、ファイルを個別にミニファイル化できる方法はありますか?
しかし、私はサイト上のいずれかのページでノックアウトを使用しています。私は共有ビューにノックアウトを含めたくないし、デフォルトではすべてのファイルを1つのファイルにまとめるとJSファイルの1つがKOに依存するため、JSエラー "ko is undefined"が発生する。縮小化CSS/JS
メインの「site.min.css」にファイルを連結することなく、ファイルを個別にミニファイル化できる方法はありますか?
まず、ノックアウトファイルをmin:js
タスクから除外する必要があります。そして、あなたはノックアウトファイルを縮小化が、何もしない新しいタスクmin:knockout
を作成する必要が
gulp.task("min:js", function() {
return gulp.src([
paths.js,
"!" + paths.minJs,
"!js/path/to/knockout.js" // don't include knockout in _site.min.js
], { base: "." })
.pipe(concat(paths.concatJsDest))
.pipe(uglify())
.pipe(gulp.dest("."));
});
:!
とパスを付加すると、そのファイルを無視するように飲み込むよう指示します。拡張されたファイルは、拡張子が.min.js
で終わるようにしてください。gulp-rename
プラグインもインストールする必要があります。
var rename = require('gulp-rename');
gulp.task("min:knockout", function() {
return gulp.src("js/path/to/knockout.js", { base: "." })
.pipe(rename("js/_knockout.min.js"))
.pipe(uglify())
.pipe(gulp.dest("."));
});
最後に、あなたがmin
とminPreBuild
タスクを実行するときに、あなたの新しいmin:knockout
タスクが実行されていることを確認する必要があります。
gulp.task("min", ["min:js", "min:knockout", "min:css"]);
gulp.task("minPreBuild", ["min:js", "min:knockout", "min:css"]);
私は不明であったと思います申し訳ありませんが、それは私はそれが問題だ縮小化しています自分自身をノックアウトいませんそれはノックアウト機能を参照する私のサイトのjsファイルの1つです。この1ページにはノックアウトがありますので、 "main.js"に同梱されることは望ましくありません。ノックアウトはすべてのページに含まれていなければならないので、 "blog.js"そのノックアウトへの依存。うまくいけばそれは理にかなっていますか – Kritner
だから何?違いはありません。 'knockout.js'の代わりにそのJavaScriptファイルを除外しなければならないということです。上記の私の答えはまだ適用されます。 –
ああ、確かに私はちょっと、感謝のショットを与えるよ! – Kritner