业力测试中的 $i18nextProvider

$i18nextProvider in karma test

我尝试 运行 测试一个使用 i18next 的指令。

我的 karma.conf.js 包含以下路径:

 'bower_components/ng-i18next/dist/ng-i18next.js',

但是在测试中我得到了

TypeError: 'undefined' is not a function (evaluating '$element.text.bind($element)')

参考:

/bower_components/ng-i18next/dist/ng-i18next.js:228

我做错了什么?

PhantomJS 不提供绑定的实现,你应该使用一个 polyfill,i18next 存储库中提供了一个:

https://github.com/i18next/ng-i18next/blob/master/test/polyfills/bind.js

然后你必须在 PhantomJS 中加载 polyfill,通常在 karma.conf.js

中的 'files' 部分