angularAMD是做者@ marcoslin使用 RequireJS + AngularJS開發的前端mvvm
框架,所以你能夠使用它快速建立一款Web App.它特別適合快速開發SPA
應用。javascript
參考文檔html
bower install angularAMD
npm install angular-amd
//cdn.jsdelivr.net/angular.amd/0.2/angularAMD.min.js
git clone https://github.com/Vanthink-UED/AngularAMD-Tutorial npm install gulp
訪問 http://localhost:8360/#/home前端
咱們定義main.js
做爲項目的入口文件,在這裏能夠定義咱們的組件以及組件的依賴項;而後在deps
裏設置咱們的項目主文件app.js
vue
// 定義入口文件 require.config({ baseUrl: "./js/", urlArgs: 'v=' + (new Date()).getTime() + Math.random() * 10000, paths: { 'angular': './lib/angular.min', 'angular-route': './lib/angular-route', 'angularAMD': './lib/angularAMD.min', 'ngload' : './lib/' + 'ngload.min', 'ng-progress': './lib/ngprogress.min', 'vued.cat': './directive/cat', }, shim: { 'angularAMD': ['angular'], 'angular-route': ['angular'], 'ng-progress': ['angular'], }, deps: ['app'] });
當全部的組件依賴項所有被定義完成,那麼app.js做爲 Angular 項目的入口文件,將開始執行啓動程序.java
define(['angularAMD'], function (angularAMD) { var app = angular.module(app_name, ['webapp']); ... // Setup app here. E.g.: run .config with $routeProvider return angularAMD.bootstrap(app); });
若是引導程序被觸發,那麼原有 ng-app
就不該該被放置在 HTML
中. angularAMD.bootstrap(app)
將會取代程序啓動。node
經過使用 angularAMD.route
咱們能夠動態配置所須要加載的 controllers
;git
app.config(function ($routeProvider) { $routeProvider.when( "/home", angularAMD.route({ templateUrl: 'views/home.html', controller: 'HomeController', controllerUrl: './js/controller/home' }) ); });
angularAMD.route
主要目的是去設置 require.js 中 resolve
去進行惰性加載 controller
以及 view
,不管
你傳入什麼樣的參數值進去,都會被返回。github
這樣訪問 index.html#/home
就能夠查看所作的修改了web
中文文檔npm