Angular karma Font Awesome - SyntaxError : Invalid or unexpected token

标签 angular karma-jasmine font-awesome angular-cli

我正在尝试在 karma 测试中设置很棒的字体,但是会出现以下错误

Chrome 58.0.3029 (Windows 10 0.0.0) 错误 未捕获的语法错误:无效或意外的标记 在 node_modules/font-awesome/fonts/fontawesome-webfont.woff2:1

即使存在该错误,正常的测试执行 (ng test) 也能正常工作,因为它只是被忽略了。 但是,当我运行 headless 测试 (ng test --browsers='PhantomJS' --single-run=true) 时,这并不适用,这会破坏我的自动构建管道。

我正在使用由 angular/cli 创建的 Angular 4,为了在我的测试中获得 Font Awesome ,我在 karma.conf.js 中添加了以下内容

files: [
  { pattern: './node_modules/font-awesome/fonts/fontawesome-webfont.woff2*', watched: false },
  { pattern: './node_modules/font-awesome/fonts/fontawesome-webfont.woff*', watched: false },
  { pattern: './node_modules/font-awesome/fonts/fontawesome-webfont.ttf*', watched: false },
  { pattern: './node_modules/font-awesome/css/font-awesome.css', watched: false },  
],

根据我目前的研究,此错误是由于附加版本(例如 ?v=4.4.0)而 font awesome css 获取文件引起的。 我可以通过在 webpack 中设置自定义加载器来修复它。

但是,由于 angular/cli 隐藏了这个实现,我似乎找不到解决方案。

最佳答案

对我来说,它只是添加:

files: [
  "node_modules/font-awesome/css/font-awesome.css",
  {
    pattern: 'node_modules/font-awesome/fonts/*',
    watched: false,
    included: false,
    served: true,
    nocache: false
  }
]

karma.conf.js - 显示图标。

关于Angular karma Font Awesome - SyntaxError : Invalid or unexpected token,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43780202/

相关文章:

npm - Angular2 beta - 引导 HTTP_PROVIDERS - "Unexpected Token <"

Angular[karma] Observable 上的异步测试

angularjs - Angular 测试失败 "minErr"

html - 如何正确设置社交媒体链接的样式

css - angular2-cli 给出@multi 样式错误

javascript - Angular 2 应用程序中的异步管道未按预期处理订阅

angular - location.hash 改变时如何使用@HostListener? ( Angular 2)

angularjs - 在 ubuntu 中使用 npm 安装 karma、jasmine 和 phantomjs 时出现问题

css - 使用 CSS 在 glyphicon 或 font-awesome 图标上画一条斜线

css - 为字体很棒的图标添加样式