簡體   English   中英

MVC6新的縮小版本和Bower / NPM捆綁在一起

[英]MVC6 new minification and bundling with Bower/NPM

我開始了解ASP.NET 5和MVC 6的最新知識,並且看到很多有關Bower VS NPM的互聯網帖子。

  • 默認啟動的MVC模板同時使用兩者 ,這是任務運行器(gulp)所需的功能,還是有其他原因?

  • 第二個問題是關於資源路徑的,在MVC <6中,您可以聲明一個相對路徑來研究縮小/捆綁的js / css。 這樣,每個MVC視圖將有其自己的通往其自己特定js / css的路徑。 我該怎么做?

  • 在MVC <6中,啟用調試(默認設置)時,js / css不會最小化,因此它保持可讀性。 我看到在環境變量上使用類似if語句的選項

    環境名稱=“開發”>腳本路徑

另一個用於視圖中的生產。 這似乎很麻煩,是否有一個簡單的解決方案,可以在調試中不進行最小化,而不必兩次列出所有路徑(一條縮小而另一條沒有列出)?

有一種版本的watch可以縮小您的js文件,而另一種版本則可以。 無論哪種方式,您所有的項目路徑都可以指向內置的js文件,以防止為開發或生產而來回切換。 您需要將縮小的內容從下面的“腳本”任務中分解出來,並創建一個可以完成此任務的任務。

//Concatenate & Minify JS
gulp.task('minscripts', function () {
    return gulp.src(config.alljs, { base: 'public/' })
        .pipe($.concat('all.js'))
        .pipe(gulp.dest('_build'))
        .pipe($.rename('all.min.js'))
        .pipe($.uglify())
        .pipe(gulp.dest(config.build));
});

gulp.task('scripts', function () {
    return gulp.src(config.alljs, { base: 'public/' })
        .pipe($.concat('all.js'))
        .pipe(gulp.dest('_build'))
        .pipe($.rename('all.min.js'))
        .pipe(gulp.dest(config.build));
});

gulp.task('watchWith', function () {
    gulp.watch('public/app/views/*.js', ['lint', 'minscripts']); //<- runs 'scripts' here
    gulp.watch('public/css/*.less', ['less']);
});

gulp.task('watchWithout', function () {
    gulp.watch('public/app/views/*.js', ['lint', 'scripts']);
    gulp.watch('public/css/*.less', ['less']);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM