2017-03-27 22 views
1

角型コントローラが対話していません。 ng-appが含まれており、ng-controllerもあります。角型コントローラが表示されない変数を表示しています

meanJSを使用します。ここ

は図である:ここ

<section ng-app="my-module" ng-controller="MyModuleController"> 
    <div> 
    {{ costumers[0] }} 
    </div> 
</section> 

コントローラである:

(function() { 
    'use strict'; 

    angular 
    .module('my-module') 
    .controller('MyModuleController', MyModuleController); 

    MyModuleController.$inject = ['$scope']; 

    function MyModuleController($scope) { 
    var vm = this; 

    // My module controller logic 
    // ... 

    $scope.costumers = [{ 
     name: 'John Doe', 
     city: 'New York' 
    }, { 
     name: 'Peter Griffin', 
     city: 'San Francisco' 
    }]; 

    init(); 

    function init() { 

    } 
    } 
})(); 
+0

もの:ここで

は、固定されたルーティングファイルのですか? –

+0

正しいHTMLが見えますか? –

+0

@ Mr.Arjun angular.js:11706エラー:[ng:areq]引数 'MymoduleController'が未定義の関数ではありません – GreetingsFriend

答えて

0

この

angular 
    .module('my-module',[]) 
    .controller('MyModuleController', MyModuleController); 

リトルサイドノートのようなアプリケーションモジュールに空の依存性注入器を初期化します。コントローラ内でthisを使用して変数を宣言したい場合は、scopeを使用しないでください。 HTMLでも代わり$scopevmを使用する

(function() { 
 
    'use strict'; 
 

 
    angular 
 
    .module('my-module',[]) 
 
    .controller('MyModuleController', MyModuleController); 
 

 
    MyModuleController.$inject = ['$scope']; 
 

 
    function MyModuleController($scope) { 
 
    var vm = this; 
 

 
    // My module controller logic 
 
    // ... 
 

 
    $scope.costumers = [{ 
 
     name: 'John Doe', 
 
     city: 'New York' 
 
    }, { 
 
     name: 'Peter Griffin', 
 
     city: 'San Francisco' 
 
    }]; 
 

 
    init(); 
 

 
    function init() { 
 

 
    } 
 
    } 
 
})();
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<section ng-app="my-module" ng-controller="MyModuleController"> 
 
    <div> 
 
    {{ costumers[0] }} 
 
    </div> 
 
</section>

+0

i.module( 'my-module'、[])ならページ上に404を与えます。 .. – GreetingsFriend

1

てみて、コントローラを使用します。

function MyModuleController($scope) { 
    var vm = this; 

    vm.costumers = [{ 
     name: 'John Doe', 
     city: 'New York' 
    }, { 
     name: 'Peter Griffin', 
     city: 'San Francisco' 
    }]; 

    init(); 

    function init() { 

    } 
    } 

HTML:

<section ng-app="my-module" ng-controller="MyModuleController as vm"> 
    <div> 
    {{ vm.costumers[0] }} 
    </div> 
</section> 
+0

ブラウザに私の{{vm.costumers [0]}}を印刷しています... – GreetingsFriend

+0

他にも問題があります –

+0

何ができますか?その新しいyo meanjsのボイラープレート... – GreetingsFriend

0

いくつかの髪を失うした後、私は問題を解決しました。ルーティングファイルに問題がありました。コントローラーの名前が間違っています。 "引数 'MymoduleController'は関数ではなく、定義されていません」とブラウザコンソールに表示され、間違っていることが示されます。 MymoduleControllerではなく、MyModuleControllerであることを意図していました。助けてくれてありがとう、問題解決!ブラウザのコンソールで

(function() { 
    'use strict'; 

    //Setting up route 
    angular 
    .module('my-module') 
    .config(routeConfig); 

    routeConfig.$inject = ['$stateProvider']; 

    function routeConfig($stateProvider) { 
    // My module state routing 
    $stateProvider 
     .state('my-module', { 
     url: '/my-module', 
     templateUrl: 'modules/my-module/client/views/my-module.client.view.html', 
     controller: 'MyModuleController', 
     controllerAs: 'vm' 
     }); 
    } 
})(); 
関連する問題