有很多方法可以做到这一点,但良好简单的方法之一,我发现是这样的:http://www.hanselman.com/blog/ControlHowYourBowerPackagesAreInstalledWithAGulpfileInASPNET5.aspx
哪些更新bowerrc文件以及此更新后的所有内容更有意义。
更新.BOWERRC和PROJECT.JSON
在项目的根是一个.bowerrc文件。它看起来像这样:
> { "directory": "wwwroot/lib" } Change it to something like this, and
> delete your actual wwwroot/lib folder.
>
> { "directory": "bower_components" } EXCLUDE YOUR SOURCE BOWER FOLDER
> FROM YOUR PROJECT.JSON
您也想进入你的project.json文件ASP.NET 5和 确保您的源文件夹bower_components从 项目及排除任何包装和出版过程。
> "exclude": [
> "wwwroot",
> "node_modules",
> "bower_components" ],
更新GULPFILE.JS
在你gulpfile,确保路径中存在的路径。有 完全其他方式来做到这一点,包括有吞咽安装凉亭和 找出路径。只要结果是生产准备就绪.js 结束在您的wwwroot准备好提供给客户,这取决于您多么复杂,只要您希望 gulp文件得到。此外, 还包含一个lib或目标,您的结果JavaScript将被复制到 。可以是脚本,可以是js,可以像我一样处于lib状态。
变种路径= { 根目录: “./” + project.webroot + “/”, 亭子: “./bower_components/”, LIB: “./” + project.webroot +“/ LIB/“};添加一个复制任务到你的领域
现在打开你的Gulpfile并记下所有任务。您将添加一个 复制任务,以仅复制想要与您的 网络应用程序部署的文件。
下面是一个例子复制任务:
> gulp.task("copy", ["clean"], function() {
> var bower = {
> "bootstrap": "bootstrap/dist/**/*.{js,map,css,ttf,svg,woff,eot}",
> "bootstrap-touch-carousel": "bootstrap-touch-carousel/dist/**/*.{js,css}",
> "hammer.js": "hammer.js/hammer*.{js,map}",
> "jquery": "jquery/jquery*.{js,map}",
> "jquery-validation": "jquery-validation/jquery.validate.js",
> "jquery-validation-unobtrusive": "jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"
> }
>
> for (var destinationDir in bower) {
> gulp.src(paths.bower + bower[destinationDir])
> .pipe(gulp.dest(paths.lib + destinationDir));
> } });
请注意,这是一个很简单,很明确的复印任务。其他 可能只是复制或多或少,甚至使用通配符通配符。 这是给你的。问题的关键是,如果你没有在ASP.NET 5或在你的web应用程序的常规构建流动喜欢一个行为,你有更多的 权力比以往任何时候。
右键单击Solution Explorer中的鲍尔节点和“恢复 包。”你也可以这样做在命令行,还是让它 在构建时发生。
查看这个简化的屏幕截图,您可以看到〜/ bower_components文件夹下的依赖关系的凉亭 。当 gulpfile运行复制任务只是 我想要的部分被移动到〜/ wwwroot的/ lib目录/文件夹**。