2016-11-07 4 views
0

私はIonic FrameworkとAngularJS 1xを使用してアプリを構築しています。コントローラを個別にリファクタリングするにはどうすればよいですか?

私のシステム情報:

Your system information: 

Cordova CLI: 6.3.1 
Gulp version: CLI version 3.9.1 
Gulp local: Local version 3.9.1 
Ionic Framework Version: 1.2.4 
Ionic CLI Version: 2.1.0 
Ionic App Lib Version: 2.1.0-beta.1 
OS: Distributor ID: LinuxMint Description: Linux Mint 18 Sarah 
Node Version: v4.2.6 

私はすべての私のコントローラとcontrollers.jsファイルを持っています。私のアプリは複雑になり、controllers.jsファイルは現在〜900行になっています。私はfirstCtrl.jsのsecondCtrl.jsなど、自分のファイルにコントローラを分離したいと思います。私はしばらくの間はグーグルではありましたが、何も見つかりませんでした。チュートリアルでは、app.jsにすべてを持っている私は見つけることができる唯一のリファクタリング例があり、彼らは

app.js

angular.module('app', ['ionic', 'ngCordova', 'ngOpenFB', 'firebase', 'angularMoment', 'app.controllers', 'app.routes', 'app.services', 'app.directives', 'app.filters']) 

.run(function($ionicPlatform, ngFB, $ionicSideMenuDelegate, $cordovaLocalNotification) { 
    $ionicPlatform.ready(function() { 

    // code code code.... 

    }); 
}) 

controllers.js

angular.module('app.controllers', ['ngCordova']) 

.controller('firstCtrl', function($scope) { 
    // awesome code... 

}) 

.controller('secondCtrl', function($scope) { 
    // awesome code... 

}) 

.controller('thirdCtrl', function($scope) { 
    // awesome code... 

}); 
をcontrollers.jsするリファクタリング

index.html

<script src="js/app.js"></script> 
<script src="js/controllers.js"></script> 
<script src="js/routes.js"></script> 
<script src="js/services.js"></script> 
<script src="js/directives.js"></script> 
<script src="js/filters.js"></script> 

コントローラをコントローラごとに個別の.jsファイルに分割するにはどうすればよいですか?

+0

の下に、あなたのコントローラを接続するために開始refrenceを取ります。ここにはいくつかあります:[this](https://github.com/johnpapa/angular-styleguide)と[this](https://github.com/gocardless/angularjs-style-guide)です。 – pasine

答えて

4

firstCtrl.js

angular.module('app.controllers') 
.controller('firstCtrl', function($scope) { 
    // awesome code... 
}) 

secondCtrl.js

angular.module('app.controllers') 
.controller('secondCtrl', function($scope) { 
    // awesome code... 
}) 

index.htmlを

<script src="js/app.js"></script> 
<script src="js/firstCtrl.js"></script> 
<script src="js/secondCtrl.js"></script> 
+0

ありがとうございます – chmod777

+0

@ chmod777アップデートはありますか?それはあなたのために働いたのですか? – Weedoze

+0

それは働いていない、私はエラーを言っている: "ionic.bundle.js:25642エラー:[ng:areq]引数 'firstCtrl'は関数ではない、定義されていない" – chmod777

1

@WeedozeはOと同じようにR iは、角度コードを構造化する方法についてのガイドのカップルに見てすることをお勧め角度オブジェクト

var app =angular.module('app.controllers')を形成し、

app.controller('XCtrl', function($scope) { 

}) 
関連する問題