最近我开始学习ASP.Net核心MVC。我总是使用bower在Visual Studio 2017中为我的项目安装软件包。但现在我想使用yarn。因为看起来凉亭被弃用了。但我不知道如何使用纱线在wwwroot文件夹中安装bootstarp。对于凉亭,我使用了bower.json,它会自动安装bootstarp。我使用“yarn add bootstrap@4.0.0-alpha.6 --dev”但它将它安装在项目文件夹的node_modules中,我在解决方案资源管理器中看不到它, 感谢
答案 0 :(得分:-1)
最好为Asp.net核心应用程序使用npm(包管理器),首先通过在vs2017中的解决方案资源管理器中右键单击项目名称并单击“add”=>来搜索并添加名为npm的包。在包中添加新项“,将引导程序添加为依赖项,如下所示,
{
"version": "1.0.0",
"name": "nameofyourapplicationinsmallcaps",
"private": true,
"devDependencies": {
},
"dependencies": {
"bootstrap": "4.1.0"
}
}
下一步 ==>在项目中创建名为middleware的根文件夹,您将在 startup.cs 内的请求管道中构建自定义扩展/ midleware(这些将查看节点模块文件夹以提供文件),确保在app.UseStaticFiles()中间件(这些提供来自wwwroot文件夹的文件)下面放置名为app.UseNodeModules()的新扩展名,如下所示,
app.UseStaticFiles(); app.UseNodeModules(env.ContentRootPath);
在中间件文件夹中,添加一个名为ApplicationBuilderExtensions.cs的类,您将创建一个app.UseStaticFiles(),其自己的请求路径指向npm包,将以下内容添加到类中(您不会使用默认的app.UseStaticFiles()),
using Microsoft.Extensions.FileProviders;
using System.IO;
namespace Microsoft.AspNetCore.Builder
{
public static class ApplicationBuilderExtensions
{
public static IApplicationBuilder UseNodeModules(this IApplicationBuilder app , string root)
{
var path = Path.Combine(root, "node_modules");
var fileprovider = new PhysicalFileProvider(path);
var options = new StaticFileOptions();
options.RequestPath = "/node_modules";
options.FileProvider = fileprovider;
app.UseStaticFiles(options);
return app;
}
}
}
下一步 ==>在vs2017中找一个名为“show all files”的解决方案资源管理器里面的图标并点击它,你会看到一个node_module文件夹,展开这个文件夹来查看bootstrap => dist => css,拖动bootstrap.css _Layout.cshtml中的开始和结束标记。
完成所有这些操作后,您可以开始使用bootstrap类为项目添加样式。