如何在VS 2017 for Mac中启用Bower?

时间:2019-03-27 14:03:03

标签: javascript dependencies asp.net-core-mvc visual-studio-mac

我正在学习使用Visual Studio 2017 for Mac来开发ASP.NET Core MVC应用程序。到目前为止,还不错,但是我的问题是我不知道如何处理/管理JavaScript库。假设您必须使用Bower(每个新项目中的4个默认依赖项在其各自的文件夹中都有一个.bower.json文件),但是项目上没有bower.json文件,老实说,我不知道从哪里开始。 / p>

我假设我应该首先在开发机器中安装Bower,但是如何将其与VS中的构建动作集成?我假设在适当的构建中,Bower应该下载并安装我的所有JS依赖项。

我已经搜索了答案,但是大多数搜索结果都表明Bower已过时,我应该使用LibMan,并且没有关于在macOS上使用LibMan的教程。

1 个答案:

答案 0 :(得分:1)

好吧,在尝试了几次技巧之后,我终于找到了解决方案。如果有人遇到相同的问题,请在此处发布。

两件事:

  • 该解决方案使用Libman代替Bower。
  • 我想您已经安装了VS for Mac和.NET Core SDK,并且已经创建了一个内部带有ASP.NET Core MVC项目的解决方案。

执行以下操作:

  1. 在终端中使用以下命令安装Libman:dotnet tool install -g Microsoft.Web.LibraryManager.Cli
  2. 删除项目中lib/文件夹下的所有文件夹。您将让Libman管理所有JS依赖项。
  3. 将JSON文件添加到您的项目。称为libman.json
  4. 将以下内容添加到libman.json并保存:

    {
        "version": "1.0",
        "defaultProvider": "cdnjs",
        "libraries": [
            {
                "library": "twitter-bootstrap@3.3.7",
                "destination": "wwwroot/lib/bootstrap"
            },
            {
                "library": "jquery@1.12.4",
                "destination": "wwwroot/lib/jquery"
            },
            {
                "library": "jquery-validate@1.17.0",
                "destination": "wwwroot/lib/jquery-validation"
            },
            {
                "library": "jquery-validation-unobtrusive@3.2.9",
                "destination": "wwwroot/lib/jquery-validation-unobtrusive"
            },
        ]
    }
    
  5. 转到项目> [PROJECT_NAME]选项... ,然后在 Build > 自定义命令< / strong>,添加构建前命令。该命令为/Users/[YOUR_USERNAME]/.dotnet/tools/libman restore,在工作目录字段中,使用宏${ProjectDir}。保存更改。

现在,每次编译解决方案(或特定项目)时,Libman都会获取并安装libman.json中所述的库。如果文件已在目标位置,则Libman不会执行任何操作。如果以前的Libman执行程序下载了这些库,那么它将从其内部缓存中检索它们。

希望这会有所帮助。