2016-11-02 11 views
2

私はこのフィールドでは新しいです。私が のようなコードを読むときhttps://plnkr.co/edit/YeahrG28bT2izX8gMKor?p=preview 私はそれを発見しない場合'myApp.dashboard','myApp.value'に入れてangular.module('myApp', ['myApp.dashboard','myApp.value']);それは動作しません。私はちょうどこのように記述する場合角度モジュールの名前にドット平均は何ですか?

(function() { 
    angular.module('myApp', []); 
})(); 

(function() { 
    angular.module('myApp.dashboard', ['myApp.value']); 
})(); 

(function() { 
    angular.module('myApp.value', []); 
})(); 

また、同様に動作しません。

ここにドットが何であるのか、なぜangular.module('myApp.dashboard', ['myApp.value']);が機能しないのか教えてください。

申し訳ありませんが、このコードは実際には混乱しています。

(function() { 
    angular.module('myApp', ['myApp.dashboard','myApp.value']); 
})(); 

(function() { 
    angular.module('myApp.dashboard', []); 
})(); 

(function() { 
    angular.module('myApp.value', []); 
})(); 

(function() { 
    'use strict'; 
    angular.module('myApp.value').factory('whichToShow', function() { 
    alert("running2"); 
    var logged = true; 
    return { 
     getVar: function() { 
     return logged; 
     }, 
     setVar: function(value) { 
     logged = value; 
     } 

    }; 
    }); 
})(); 

(function() { 
    'use strict'; 
    angular.module('myApp.dashboard').controller('mainControl', mainControl); 

    mainControl.$inject = ['whichToShow']; 
    alert("running1"); 

    function mainControl(whichToShow) { 
    this.logged = whichToShow.getVar(); 
    alert("this.logged"); 
    } 
})(); 

補足:私は二番目の質問をするべきではありません、私はミスをしました、他の場所、申し訳ありません。

答えて

4

実際には、名前の衝突を排除するために従うことができるコーディングスタイルです。

サブモジュール用セパレータ付きの固有の命名規則を使用してください。

なぜですか?一意の名前は、モジュール名の衝突を避けるのに役立ちます。セパレータは、 モジュールとそのサブモジュールの階層を定義するのに役立ちます。たとえば、appは ルートモジュールですが、app.dashboardとapp.valuesは がappの依存として使用されるモジュールです。私もジョン・パパによって上記Githubのレポで提案されているように、あなたは、角内のすべてのコンポーネントのスタイルガイドについての明確な理解を持つことが示唆ジョンパパアンギュラスタイルガイドStyle Y021

に参照のうえ

+0

あなたの2番目の質問は何ですか?私はそれを指すことができません。 – Aravind

3

['myApp.dashboard','myApp.value']は依存関係について説明しています。 これは、myAppがこれらの依存関係を使用して動作する必要があることを意味します。

ドットについては、いい命名規則です。ドットなしでも使えます。 myApp.dashboardという名前は、dashboardモジュールがmyAppモジュールの一部またはサブモジュールであることを示すのに役立ちます。しかし、技術的には、ドットは必要ありません。 dashboardと指定することもできます。依存関係は、名前自体ではなく、[ ]配列で明示的に表現されています。

関連する問題