小编Jak*_*ake的帖子

ng-cli 6和字体真棒图标不起作用

我正在使用超棒的4.70,Angular 6.0.8和cli 6.0.8(下面有完整版本),我正在尝试用cli的“ ng build”替换我们现有的webpack进程。我遇到了字体真棒图标无法显示的问题。过去,我曾在较旧的版本中看到过类似的问题,但是我还没有找到解决方案。

我将字体挂在我的资产中

assets:[
    "./node_modules/font-awesome/fonts",
    //other assets
]
Run Code Online (Sandbox Code Playgroud)

我在angula.json的样式部分中加入了CSS

styles:[
    "./node_modules/font-awesome/css/font-awesome.css",
    //other styles
]
Run Code Online (Sandbox Code Playgroud)

我不是在使用“ ng serve”,而是在使用build命令来编译我的代码。在浏览器中,我得到这些错误。

GET http:// localhost:29380 / fontawesome-webfont.woff2?v = 4.7.0 404(未找到)

GET http:// localhost:29380 / fontawesome-webfont.woff?v = 4.7.0 404(未找到)

GET http:// localhost:29380 / fontawesome-webfont.ttf?v = 4.7.0 404(未找到)

我在输出目录中看到了资产,但是由于某些原因,这些资产不可用,我得到了404。

在此处输入图片说明

font-awesome angular angular-cli-v6

5
推荐指数
1
解决办法
5816
查看次数

Typescript:如何创建类型的副本但更改属性类型

我想为一个对象创建两种类型。对象本身的类型和验证错误的类型。这两种类型将具有相同的属性名称,但属性将具有不同的类型。

type Person = {
  name: string,
  age: number,
  married: boolean
}

type PersonValidationError = {
  name?: string,
  age?: string,
  married?: string
}

Run Code Online (Sandbox Code Playgroud)

在用户填写构建对象的表单后,Person我想通过一些验证来运行它,如果出现错误,我想创建错误对象,该对象将在相应的属性中包含错误消息。有没有一种方法可以将其PersonValidationErrorPerson类型本身联系起来,这样当我添加更多属性时,Person我就不必担心它们不同步。

我的第一个想法是使用keyof

type PersonValidationError = {
  [prop: keyof Person]: string
}
Run Code Online (Sandbox Code Playgroud)

但据我了解,这是无效的,keyof不能在索引签名中使用。

我也知道PersonValidationError它的所有属性都标记为可选,但如果我无法更改道具的要求,那也没关系,因为我总是可以将其包装在Partial<>

types typescript

5
推荐指数
1
解决办法
5465
查看次数