[Angularjs] 第一步開始一個項目


[Angularjs] 第一步開始一個項目

一、什么是angularjs

angularjs2009年興起的,目前由Google維護一個采用mvc模式的js框架,很多時候用來創建單頁面應用。我也經常將其和phonegap一起來開發webapp

二、Angularjs項目結構

通常代碼可以這樣:index.html

第一個js文件(angular.js)是核心文件,必須有。而其他angular-*.js都是功能文件,如果項目不需要使用到可以不引用的。

app.js文件是對angular應用的定義,本例中代碼如下:

1 'use strict';
 2 
3 angular.module('interApp', [
4 'ngCookies',
5 'ngResource',
6 'ngSanitize',
7 'ngRoute'
8 ])
9  .config(function ($routeProvider) {
10  $routeProvider
11  .when('/', {
12  templateUrl: 'views/index.html',
13  controller: 'IndexCtrl'
14  }).when('/report', {
15  templateUrl: 'views/reports.html',
16  controller: 'ReportsCtrl'
17  }).when('/report/:id', {
18  templateUrl: 'views/report_detail.html',
19  controller: 'ReportDetailCtrl'
20  }).otherwise({
21  redirectTo: '/'
22  });
23  });

代碼中定義了一個angular應用叫interApp,而且重定向了路由,example.com/index.html#/report 就會調用ReportsCtrl控制器,而對應的視圖是views/reports.html

上例中ReportsCtrl控制器的定義在最先的main.js文件。如下:

1 angular.module('interApp')
2  .controller('IndexCtrl',['$scope',function($scope){
 3 
4  }]).controller('ReportsCtrl',['$scope',function($scope){
5  (function(){//初始化的函數
6  $scope.people = {
7  nickname: 'HuangJacky',
8  img : 'http://localhost:63342/inter/app/images/logo.png',
9  score: 20,
10  website: 'http://huangjacky.com',
11  realname: 'Fiend Huang',
12  address: 'belford street 202,lodon,England',
13  telephone: '+861587083168'
14  }
15  })();
16  }]);

angularjs中各個文件相互的關系大致就是這樣的了

三、快速創建angularjs項目

目前創建一個angularjs項目可以分成手動和自動兩種方法。

手動其實就是自己去下這些js文件,然后在html中添加相應的引用,然后創建app.js和控制器定義文件。

而自動創建一個項目的方法,我知道的有兩種:

  • angular-seed

  • yeoman

angular-seedgithub上面一個開源的項目,你只需要git clone一下,一個angular項目結構就有了,剩下來的事就是寫控制器和視圖,挺快捷的。

yeoman是一個工作流的自動化工具,不僅僅針對angularjs。當然使用前必須安裝,而且它是基於nodejs的,因此請先安裝好,然后在命令行中輸入:

接着在命令行中輸入yo 或者 yo angular,就會出現如圖的效果:



四、參考

Angularjs:http://angularjs.org/

angular wiki:http://zh.wikipedia.org/wiki/AngularJS

angular-seed:https://github.com/angular/angular-seed

yeoman:http://yeoman.io/

angular常用教程:http://angularjs.cn/hots






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM