【发布时间】:2015-09-20 10:02:44
【问题描述】:
在 ASP.NET 5 beta6 及更早版本中出现的 bower_components 文件夹,但从 beta7 开始不再存在 bower_components 文件夹,并且 bower 包直接位于 wwwroot/libs 文件夹中。似乎这种变化打破了exportsOverride 功能。 是否可以使用 exportOverrides 或其他方法减少 lib 文件夹中不必要的文件数量?
在 bower.json 我有以下 exportsOverride 部分:
"exportsOverride": {
"bootstrap": {
"js": "dist/js/*.*",
"css": "dist/css/*.*",
"fonts": "dist/fonts/*.*"
}
}
在 wwwroot 文件夹中,我希望看到在 exportsOverride 中定义的唯一文件,就像在以前的版本中一样,但我看到了那里的所有内容:
【问题讨论】:
-
我不知道为什么它会破坏 exportOverrides,但我可以告诉你在 web 项目的根目录中有一个名为 .bowerrc 的文件,该文件告诉 bower 将组件放在 wwwroot/ 下库。我猜测其意图是因为无论是在开发还是生产中,我们都需要从 wwwroot 下方加载静态资源。对于生产,可能使用 grunt 来处理与 lib 不同的子文件夹中的所需生产文件,然后在 project.son 中使用 publishExclude 在发布期间删除不需要的文件和文件夹,例如 wwwroot/lib。
-
谢谢,我看到了那个文件,现在我可以更改默认位置了。但问题有点深。如果默认文件夹是 wwwroot/lib,bower 会将它下载的所有内容放到这个文件夹中,但我想只保留作为包一部分的文件。即使您添加了exportsOverride,bower 也会将所有内容复制到文件夹中,而不仅仅是在beta6 中定义的exportOverride 中定义的文件
-
以下是您可以尝试的一种解决方案:stackoverflow.com/questions/32296565/…
-
谢谢Kiran,我试试看。看起来是可以接受的解决方法。
-
问题不在于 ASP.NET 或项目模板本身。 gulp 任务运行器不尊重 exportOverride github.com/zont/gulp-bower/issues/30。咕噜声可以做到并吞下 - 不是:(
标签: bower asp.net-core