我正在构建一个个人项目,并且在加载字体超棒的webfonts方面存在一些问题。我已经制作了一个gulp构建来集成Bootstrap 4并将所有我的JS / SCSS / Fonts / Img从src目录构建到dist目录。我在wwwroot之外服务Dist
将ASPNETCORE_ENVIRONMENT设置为开发时,一切正常,我的字体加载正确,但在"生产",它没有加载,我在控制台中收到以下消息:
FileExtensionContentTypeProvider typeProvider = new FileExtensionContentTypeProvider();
if (!typeProvider.Mappings.ContainsKey(".woff2"))
{
typeProvider.Mappings.Add(".woff2", "application/font-woff2");
}
if (!typeProvider.Mappings.ContainsKey(".woff"))
{
typeProvider.Mappings.Add(".woff", "application/font-woff");
}
if (!typeProvider.Mappings.ContainsKey(".ttf"))
{
typeProvider.Mappings.Add(".woff", "application/font-ttf");
}
app.UseStaticFiles(new StaticFileOptions
{
ContentTypeProvider = typeProvider,
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "DistAssets")),
RequestPath = "/assets"
});
当我将鼠标悬停在错误上时,我发现它们是从我的SrcAssets提供的,而不是像我所有其他资源文件那样提供DistAssets。
我没有找到任何关于Core2.0 MVC的工作资源我发现的一切都是关于这些文件扩展需要映射到ex的旧版本。应用/字体woff2
我尝试过的最后一件事就是配置方法,但它仍然无效。
namespace aspnetcore does not exist .. are you missing a reference?
感谢您的帮助。
答案 0 :(得分:0)
我遇到了同样的问题,但是我在"../lib/FontAwesome/webfonts"
中添加了"../webfonts"
而不是_variables.scss
$fa-font-path: "../lib/FontAwesome/webfonts" !default;
也许对您也有帮助:)
答案 1 :(得分:0)
尝试将此代码添加到您的web.config
<configuration>
....
<system.webServer>
<staticContent>
<mimeMap fileExtension="woff" mimeType="font/woff" />
</staticContent>
</system.webServer>
</configuration>