Error: [$injector:unpr] Unknown provider: BigNumberProvider
我从
Webpack + Angular.JS
开始项目,我想使用Bignumber.js
,但不能包含它。Webpack配置的一部分:
resolve: {
root: [path.join(__dirname, 'assets/libs/bower_components'), 'node_modules']
},
entry: {
entry: ['./app/app.js'],
vendor: [
'lodash',
'bignumber.js',
'angular'
....
由于它是库,因此我不将其作为依赖项包含在我的主app.js中。
但是我试图将其注入我的指令:
app.directive('createpayment', [
'$http',
' * ', // I've tried BigNumber, bignumber, binumber.js all of this doen't work
// And there is nothing about this in README
function($http, BigNumber ? , bignumber ? ) {
最佳答案
这可以通过将ProvidePlugin
插件用于webpack来实现:
webpack.config.js
...
plugins: [
new webpack.ProvidePlugin({
BigNumber: 'bignumber.js',
lodash: 'lodash',
$: 'jquery'
}),
]
...
ProvidePlugin
定义假定您已经在Webpack配置中添加了resolve
声明。