【问题标题】:How to copy bower dependencies in wwwroot with wiredep (mvc 6)如何使用wiredep(mvc 6)在wwwroot中复制bower依赖项
【发布时间】:2015-08-24 15:29:28
【问题描述】:

我尝试创建一个任务,允许使用 gulp 和wiredep 在我的索引中下载和注入依赖项。它可以工作,但就像我的文件夹 bower_components 一样,它不在我的 wwwroot 中,我的脚本链接是错误的。对于我的所有链接,错误是“未捕获的语法错误:意外的令牌

这是我的 gulp 任务:

eval("var project = " + fs.readFileSync("./project.json"));

gulp.task('bower', function () {
    gulp.src("./" + project.webroot + "/index.html")
        .pipe(wiredep({
            directory: "./bower_components/",
            bowerJson: require('./bower.json')
        }))
        .pipe(gulp.dest("./" + project.webroot + "/"))
});

我的项目架构:

还有我的 index.html(头):

  <!--bower:css-->
    <link rel="stylesheet" href="../bower_components/bootstrap/dist/css/bootstrap.css" />
    <link rel="stylesheet" href="../bower_components/bootstrap-touch-carousel/dist/css/bootstrap-touch-carousel.css" />
    <!--endbower-->
    <!--bower:js-->
    <script src="../bower_components/jquery/dist/jquery.js"></script>
    <script src="../bower_components/bootstrap/dist/js/bootstrap.js"></script>
    <script src="../bower_components/jquery-ui/jquery-ui.js"></script>
    <script src="../bower_components/jquery-validation/dist/jquery.validate.js"></script>
    <script src="../bower_components/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
    <script src="../bower_components/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js"></script>
    <script src="../bower_components/hammer.js/hammer.js"></script>
    <script src="../bower_components/bootstrap-touch-carousel/dist/js/bootstrap-touch-carousel.js"></script>
    <script src="../bower_components/angular/angular.js"></script>
    <script src="../bower_components/angular-route/angular-route.js"></script>
    <script src="../bower_components/angular-resource/angular-resource.js"></script>
    <script src="../bower_components/angular-ui-router/release/angular-ui-router.js"></script>
    <script src="../bower_components/angular-animate/angular-animate.js"></script>
    <script src="../bower_components/angular-cookies/angular-cookies.js"></script>
    <script src="../bower_components/angular-parse/angular-parse.js"></script>
    <script src="../bower_components/angular-locker/dist/angular-locker.min.js"></script>
    <!--endbower-->

所以我已经为我的 gulp 任务测试了这个:

eval("var project = " + fs.readFileSync("./project.json"));

    gulp.task('bower', function () {
        gulp.src("./" + project.webroot + "/index.html")
            .pipe(wiredep({
                directory: "./"+project.webroot+"bower_components/",
                bowerJson: require('./bower.json')
            }))
            .pipe(gulp.dest("./" + project.webroot + "/"))
    });

使用此代码,错误是没有安装凉亭。

感谢您给予我的所有帮助。

【问题讨论】:

    标签: asp.net-mvc gulp bower wiredep


    【解决方案1】:

    如果您有一个 .bowerrc 文件,其中包含:

    {
        "directory": "wwwroot/lib"
    }
    

    然后在凉亭安装时,它将被复制到目标文件夹。

    【讨论】:

    • 虽然这可以工作并复制该文件夹上的 bower 依赖项,但如果将依赖项(及其臃肿)安装在 wwwroot/ 之外并且仅将所需的缩小/处理文件复制到wwwroot/lib?我了解 OP 要求您提供确切的解决方案。我只是想知道是否有更好的方法!
    猜你喜欢
    • 1970-01-01
    • 2017-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-13
    • 2014-11-03
    • 2015-06-06
    • 1970-01-01
    相关资源
    最近更新 更多