Saya menulis satu file konstan dengan Reff, Saya mendapatkan Pengecualian berikut Jika saya mencoba seperti itu:

angular.min.js:118 Error: [$injector:unpr] http://errors.angularjs.org/1.5.8/$injector/unpr?p0=ENVProvider%20%3C-%20ENV%20%3C-%20viewRoleController

Saya mendapatkan kesalahan di atas di konsol: Kode saya sebagai berikut,

jsp:- menyertakan lokasi file konstan

angularController

var app = angular.module('App', ['angularUtils.directives.dirPagination','ui.bootstrap']);

app.controller('viewRoleController', function($scope, $http, ENV, viewRoleService) {

    var dynamicData;

    $http.get('js/commons/AngularConstantFile.js').then(function (response) {
        dynamicData = response.data;
    });
});

File konstan:-

var app = angular.module('App');

app.constant("ENV", {
  "status412": "412",
  "Success": "Success",
});
1
Shiva Goud A 12 Maret 2017, 14:42

2 jawaban

Jawaban Terbaik

Cobalah seperti di demo biola sederhana ini. Pastikan konfigurasi Anda dimuat setelah aplikasi utama Anda ke DOM dan Anda akan baik-baik saja.

Aplikasi AngularJS

var myApp = angular.module('myApp',[]);

myApp.controller('MyCtrl', function ($scope, ENV) {
    $scope.ENV = ENV;
})

myApp.constant("ENV", {
  "status412": "412",
  "Success": "Success",
});

Pendekatan lain adalah membuat konfigurasi Anda dalam modul sendiri dan menguraikannya ke dalam aplikasi utama Anda seperti di demo biola. Ini juga akan berfungsi jika konfigurasi Anda dialihdayakan ke file sendiri.

Aplikasi AnuglarJS

var config = angular.module('config',[]).constant("ENV", {
  "status412": "412",
  "Success": "Success",
});

var myApp = angular.module('myApp', ['config']);

myApp.controller('MyCtrl', function ($scope, ENV) {
    $scope.ENV = ENV;
});
0
lin 12 Maret 2017, 13:02

Cukup ubah file js konstan Anda sebagai berikut, yang akan memastikan untuk menggunakan instance global dari modul

angular.module('App').constant("ENV", {
  "status412": "412",
  "Success": "Success",
});
1
Sajeetharan 12 Maret 2017, 12:43