在Visual Studio 2017 ASP.NET MVC核心模板中更换Bower

Mar*_*cel 21 asp.net-mvc visual-studio visual-studio-templates bower asp.net-core

最近我使用Visual Studio 2017(15.6.3)从头开始创建了一个ASP.NET MVC Core项目.我发现了通常的JavaScript框架:

  • 引导
  • jQuery的
  • jQuery的验证
  • jQuery的验证,不显眼

但不幸的是,所有Bower的支持都消失了!没有bower.json,没有.bowerrc,没有"管理凉亭包......"了:

在此输入图像描述

Visual Studio的ASP.NET MVC Core模板有什么问题?鲍尔变得过时了吗?

如果Bower已被弃用,请不要将此问题复制到如何在Visual Studio 2017中使用bower包!我不喜欢指向已弃用技术的修复程序.

我想缩小一个问题:用NPM取代Bower最简单(最直观)的方法是什么?鲍尔一样做了与它的.bowerrc:{ "directory": "wwwroot/lib" }

nii*_*ico 14

鲍尔实际上已经死了.

微软拥有一个轻量级的解决方案,目前正在这个名为Library Manager(LibMan)的解决方案中.

它是一个基于json的简化解决方案,具有非常简单的用户界面 - 可让您控制下载哪些文件(当您需要1时不再下载数百个文件).

Mads Kristensen在Build 2017的预览中做了一个很棒的介绍. (视频应该在43分钟左右的正确位置开始).

在撰写本文时,它仍处于预览状态 - 但是由于将在Visual Studio 15.8中发布.

如果您想在此之前尝试,可以从GitHub RepoVisual Studio Marketplace中获取它- 解决此问题的说明

你仍然可以使用npm等 - 虽然这是微软使用它的原因(或者同样) - 来自Visual Studio Marketplace:

使用此扩展程序的原因

  • 对于当前未使用其他包管理器的应用
  • 对于您认为Bower和npm过度的项目
  • 对于不想使用Bower或npm的开发人员
  • 对于那些在工具中重视简洁性的开发人员
  • 用于使用自定义或私有包/文件
  • 对于NuGet无法安装内容包的ASP.NET Core应用程序


Chr*_*rdt 6

鲍尔死了。凉亭团队指的是Yarn(NPM的附加功能)。

由于Visual Studio有一些NPM支持,因此我会继续努力。

在您的项目的根目录中创建一个package.json(Todo 在您的项目中右键单击,添加项目并搜索NPM。您将找到一个npm Configuration File):

{
  "name": "SomeName",
  "version": "1.0.0",
  "private": true,
  "dependencies": {
    "bootstrap": "3.3.7",
    "jquery": "3.3.1",
    "jquery-validation": "1.17.0",
    "jquery-validation-unobtrusive": "3.2.10",
    "jquery-ajax-unobtrusive": "3.2.4",
  }
}
Run Code Online (Sandbox Code Playgroud)

每次更改json文件时,只需按CTRL+即可S。Visual Studio自动调用NPM并还原软件包。另请注意,您对软件包名称和版本号有一定的了解。

迁移自己后,我不记得在npm上找不到软件包。但是,如果您是这种情况,请注意,您可以直接引用github存储库

依赖关系将保存到node_modules文件夹。那是给新的包管理器的。

现在您遇到了问题,需要将其捆绑以发布(您也应该对Bower进行处理)。Bundeling是你的JavaScript / CSS /图像资产合并到一个单一的过程中bundle.jsbundle.csssprite.svg。这些应复制到wwwroot文件夹中。

为此,我们有一些选择(我将仅链接到一些,因为这会扩大问题的范围):