代码之家  ›  专栏  ›  技术社区  ›  LatentDenis

ASP.NETCore2.1:如何将Gulp与npm一起用于项目依赖项

  •  1
  • LatentDenis  · 技术社区  · 8 年前

    Bower 如果ASP.NETCore2.0已经过时,我需要找到一种同样有效的方法来缩小/注入npm中的依赖项。

    gulp ,并使用 npm ,我正在将所有依赖项更新到 node_modules package.json 要注入到 wwwroot

    我正在学习Shawn Wildermuth的教程: https://wildermuth.com/2017/11/19/ASP-NET-Core-2-0-and-the-End-of-Bower 还有他的“ “需要在中列出依赖项目录。” Gulp 文件:

    // Dependency Dirs
    var deps = {
        "jquery": {
            "dist/*": ""
        },
        "bootstrap": {
            "dist/**/*": ""
        },
    };
    

    gulp.task("scripts", function () {
        var streams = [];
    
        for (var prop in deps) {
            console.log("Prepping Scripts for: " + prop);
            for (var itemProp in deps[prop]) {
                streams.push(gulp.src("node_modules/" + prop + "/" + itemProp)
                    .pipe(gulp.dest("wwwroot/vendor/" + prop + "/" + deps[prop][itemProp])));
            }
        }
    
        return merge(streams);
    });
    

    是否可以在不列出列表中所有依赖项目录的情况下执行此操作 吞咽 而是扫描 文件以从中携带特定文件 节点单元 网站根目录

    package.json :

    {
        "version": "1.0.0",
        "name": "asp.net",
        "dependencies": {
            "jquery": "3.3.1",
            "bootstrap": "4.1.1"
        },
        "devDependencies": {
            "gulp": "3.9.1",
            "gulp-concat": "2.6.1",
            "gulp-cssmin": "0.1.7",
            "gulp-uglify": "2.0.1",
            "rimraf": "2.6.1"
        }
    }
    

    这是我余下的时间 gulpfile.js :

    /// <binding BeforeBuild='clean, min, scripts' Clean='clean' />
    "use strict";
    
    var gulp = require("gulp"),
        rimraf = require("rimraf"),
        concat = require("gulp-concat"),
        cssmin = require("gulp-cssmin"),
        uglify = require("gulp-uglify");
    
    var paths = {
        webroot: "./wwwroot/"
    };
    
    paths.js = paths.webroot + "js/**/*.js";
    paths.minJs = paths.webroot + "js/**/*.min.js";
    paths.css = paths.webroot + "css/**/*.css";
    paths.minCss = paths.webroot + "css/**/*.min.css";
    paths.concatJsDest = paths.webroot + "js/site.min.js";
    paths.concatCssDest = paths.webroot + "css/site.min.css";
    
    gulp.task("clean:js", function (cb) {
        rimraf(paths.concatJsDest, cb);
    });
    
    gulp.task("clean:css", function (cb) {
        rimraf(paths.concatCssDest, cb);
    });
    
    gulp.task("clean", ["clean:js", "clean:css"]);
    
    gulp.task("min:js", function () {
        return gulp.src([paths.js, "!" + paths.minJs], { base: "." })
            .pipe(concat(paths.concatJsDest))
            .pipe(uglify())
            .pipe(gulp.dest("."));
    });
    
    gulp.task("min:css", function () {
        return gulp.src([paths.css, "!" + paths.minCss])
            .pipe(concat(paths.concatCssDest))
            .pipe(cssmin())
            .pipe(gulp.dest("."));
    });
    
    gulp.task("min", ["min:js", "min:css"]);
    

    我已经看到了一些解决方案,它们简单地从

    有什么帮助吗?

    0 回复  |  直到 8 年前