Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了angular – ng2日期管道格式化触发karma测试中的“无语言环境数据”错误大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个用angular-cli创建的基本AngularJS2项目.我从新生成的项目开始.在app.component.ts中,我存储了一个日期:

theDate = new Date();

我用日期管道显示它:

{{theDate | datE}}

日期正确显示并按预期格式化.但如果我运行测试,我会收到以下错误

Failed: Error in ./AppComponent class AppComponent - inline template:4:3 caused by: No locale data has been provided for this object yet.
g@node_modules/karma-intl-shim/lib/shim.js:11:1866
F@node_modules/karma-intl-shim/lib/shim.js:11:8835
k@node_modules/karma-intl-shim/lib/shim.js:11:8335

失败的测试是:

it('should render title in a h1 tag',async(() => {
  let fixture = TESTBed.createComponent(AppComponent);
  fixture.detectChanges();
  let compiled = fixture.debugElement.nativeElement;
  expect(compiled.querySELEctor('h1').textContent).toContain('app works!');
}));

的package.json:

"karma-intl-shim": "^1.0.3"

karma.conf:

@H_945_7@module.exports = function (config) { config.set({ ... frameworks: ['jasmine','angular-cli','intl-shim'],plugins: [ require('karma-intl-shim'),... ] ...

备注:

> angular-cli“1.0.0-beta.16”
>为方便起见,我已切换到PhantomJS,但Chrome也是如此.
>我确实执行了npm install –save来安装依赖项.

为了使读者更容易,项目存储here.

丢失的是什么?谢谢.

解决方法

我实际上是试图寻找解决方案,最后这对我有用,我的所有测试都通过了PhantomJS

的package.json

"dependencies": {  
  "intl": "^1.2.5",..
   },"devDependencies": {
    "karma-intl-shim": "^1.0.3","phantomjs-prebuilt": "~2.1.7",}

在Karma.conf.js中

- frameworks: [... 'intl-shim' ..],- plugin: [... require('karma-intl-shim') . ]
 -  files: [{
                pattern: './node_modules/Intl/locale-data/jsonp/en-Us.js',watched: false
            },]

更新:根据操作系统,Intl的路径可能会有所不同

pattern: './node_modules/Intl/locale-data/jsonp/en-Us.js',

VS

pattern: './node_modules/intl/locale-data/jsonp/en-Us.js',

注意资本“我”

大佬总结

以上是大佬教程为你收集整理的angular – ng2日期管道格式化触发karma测试中的“无语言环境数据”错误全部内容,希望文章能够帮你解决angular – ng2日期管道格式化触发karma测试中的“无语言环境数据”错误所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。