我在Angular 6项目中使用sass进行样式化,现在我希望能够通过styleUrls: ['./filename.scss']在Component声明中使用特定于组件的样式,而不是仅使用全局sass文件.
所以我按照这些说明在webpack中工作,除了一件事之外它工作正常:CSS content-property 中的字体很棒.基本上,我有一个包含以下SCSS的组件:
$fa-font-path: "~@fortawesome/fontawesome-free/webfonts";
@import "~@fortawesome/fontawesome-free/scss/fontawesome.scss";
@import "~@fortawesome/fontawesome-free/scss/fa-solid.scss";
.myelement {
&:after {
@include fa-icon;
@extend .fas;
content: fa-content($fa-var-angle-down);
}
}
Run Code Online (Sandbox Code Playgroud)
我的Webpack看起来像这样:
module: {
rules: [
{
test: /\.scss$/,
exclude: /node_modules/,
use: ['raw-loader', 'sass-loader']
},
{
test: /\.(woff(2)?|ttf|eot|svg)(\?v=\d+\.\d+\.\d+)?$/,
use: [{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts'
}
}]
},
...
]
}
Run Code Online (Sandbox Code Playgroud)
这与webpack编译得很好,但我在浏览器控制台中出错并且图标被替换为正方形.
在Firefox中我收到以下错误:
downloadable font: rejected by sanitizer
(font-family: "Font Awesome 5 Free" style:normal weight:900 stretch:100 src …Run Code Online (Sandbox Code Playgroud) 简短的问题
我可以有一个输入元素,其中占位符文本会根据组件的状态而变化吗?
更长的问题
Angular 可以通过以下语法示例添加 i18n:
<input i18n-placeholder placeholder="default placeholder" />
Run Code Online (Sandbox Code Playgroud)
它还可以通过以下语法示例添加复数规则:
<span i18n>
Updated {minutes, plural, =0 {just now} =1 {one minute ago} other {{{minutes}} minutes ago}}
</span>
Run Code Online (Sandbox Code Playgroud)
我尝试合并这两个功能,以便占位符的文本根据组件的状态而变化。组件模板包含以下 html:
<input i18n-placeholder placeholder="Add {stuff.length, plural, =0 {} other {more}} stuff..." />
Run Code Online (Sandbox Code Playgroud)
我希望占位符Add stuff...在单数情况下和Add more stuff...复数情况下说,但我在占位符中得到的只是Add.
有没有办法在不复制元素和使用的情况下在 html 属性中获得复数 i18n *ngIf?
当我在 Visual Studio 2019 中创建新的 Service Fabric 应用程序(即包含 .sfproj 文件的项目,而不是单个服务)时,我无法选择 .NET Core 作为该项目的框架。我只能在不同版本的 .NET Framework 之间进行选择。这是预期的还是与我的设置有什么关系?我已将 Service Fabric 解决方案中的所有其他项目迁移到 .NET Core,但无法迁移 .sfproj 项目。虽然不是一个大问题,但完全摆脱 .NET Framework 会很好。
重现步骤:文件 > 新建 > 项目 > 搜索并选择“Service Fabric 应用程序” > 下一步