在 Visual Studio 版本上恢复 Bower 组件

Restore bower components on Visual Studio build

我刚刚在 VS 2015 中创建了我的第一个 ASP.NET 5 MVC 6 项目。开箱即用的 Web 应用程序项目。

我发现 Bower 组件存储在 wwwroot/lib 文件夹中。我做了一个实验并删除了它。在那之后我重建了项目并且 bower 组件 not 恢复了。

在控制台中手动调用 bower install 恢复了文件。

如何让 Visual Studio 在构建时自动恢复 Bower 文件?

我想出了一个方法来做到这一点,虽然我不太喜欢它。我很乐意接受更好的答案。

项目的gulpfile.js第一行是注释

/// <binding Clean='clean'/>

它挂钩到 Visual Studio Clean 事件并将 clean Gulp 任务绑定到它。 您可以挂钩其他事件,例如After Build。我将它与使用 gulp-bower 恢复组件的任务绑定。

gulpfile.js

/// <binding Clean='clean' AfterBuild='after_build'/>

var gulp = require("gulp"),
    bower = require('gulp-bower');

...

gulp.task("after_build", function() {
    return bower()
        .pipe(gulp.dest(paths.webroot + 'lib/'));
});

您可以在 Task Runner Explorer 中看到绑定:

虽然这个解决方案似乎有点笨拙。我宁愿让 kpm-utility 来完成这项工作。

编辑

实际上不需要在构建时恢复包。当您在 VS 中打开项目时,它们会恢复。但是我不知道当您从代码存储库更新源代码时会发生什么。