2015-08-24 41 views
1

我試圖創建一個任務,允許使用gulp和wiredep在我的索引中下載和注入依賴項。它的作品,但像我的文件夾bower_components它不在我的wwwroot我的腳本的鏈接是錯誤的。錯誤是'Uncaught SyntaxError:Unexpected token <'for all my links。所以,我試圖改變目標文件夾,但是當我運行我的任務時,我發現了一個新的錯誤'bootstrap is not installed'。而且我無法在同一個項目中重新安裝兩次引導程序。如何使用wiredep複製wwwroot中的bower依賴項(mvc 6)

這是我的任務,一飲而盡:

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 + "/")) 
}); 

我的項目結構: my project architecture:

和我的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--> 

所以我已經測試這對我吞嚥任務:

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 + "/")) 
    }); 

有了這個代碼,錯誤是沒有安裝涼亭。

謝謝你給我的所有幫助。

回答

1

如果你有一個.bowerrc文件:

{ 
    "directory": "wwwroot/lib" 
} 

然後在涼亭安裝,它會被複制到目標文件夾。

+1

雖然這個作品和複印件亭子依賴該文件夾上,豈不是更好,如果依賴關係(與所有的消腫)分別安裝之外的wwwroot /只有所需的精縮/處理的文件複製到wwwroot的/ lib目錄?我瞭解OP正在要求您提供確切的解決方案。我只是想知道是否有更好的方法! – igarciaoliver

相關問題