1
は私のシナリオです:メインモジュールを定義
- ファイルA.js。
- ファイルB.jsコントローラといくつかのディレクティブが含まれている遅延ロード(角度ブートストラップ後)。
ファイルA.js:
var APP = angular.module('app.hello', ['ui.router', 'ngAnimate', 'ngTable', 'ngSanitize', 'ngCsv']);
(function() {
APP.config(function ($controllerProvider, $compileProvider) {
APP.loadController = $controllerProvider.register;
APP.loadDirective = $compileProvider.directive;
});
})();
ファイルB.js:
(function() {
"use strict";
APP.loadController("dynamicDemoController", dynamicDemoController);
dynamicDemoController.$inject = ["NgTableParams", "ngCsv"]; // <-- err
function dynamicDemoController(NgTableParams, CSV) {
// ...
}
})();
私は完璧NgTableParams
を注入していますが、私は「注入することができませんよ"ngCsv
モジュールと私はコンソールでこのエラーが表示されます:
Error: [$injector:unpr] Unknown provider: ngCsvProvider <- ngCsv <- dynamicDemoController
私はおそらく何か不足していますか?
解決策は何ですか? ngCsvのドキュメントを参照すると、ngCsvはコントローラ上でhttps://github.com/asafdav/ng-csv/wiki/Using-CSV-as-Serviceの「サービス」を公開する必要があります。 –
ちょうどCSVを注入する... ngCsvではない... ngCsvモジュールをロードすると、あなたもCSVサービスを受ける。 – Thalaivar
モジュールがこのサービスを保持する、https://github.com/asafdav/ng-csv/blob /master/src/ng-csv/services/csv-service.js – Thalaivar