angularAMD快速入門


ngularAMD是作者 marcoslin 使用 RequireJS + AngularJS開發的前端mvvm框架,因此你可以使用它快速創建一款Web App.他特別適合快速開發SPA應用,適當的和更簡單的方式。

 

我們整合AngularJS和RequireJS不應該是復雜的,它不是angularAMD。在行動中看到它,檢測本網站顯示的情況下,關鍵功能。確保加載你最喜歡的開發工具看到按需加載*.js文件作為您切換標簽。

快速入門

定義main.js組件和依賴項:

require.config({ baseUrl: "js", paths: { 'angular': '.../angular.min', 'angular-route': '.../angular-route.min', 'angularAMD': '.../angularAMD.min' }, shim: { 'angularAMD': ['angular'], 'angular-route': ['angular'] }, deps: ['app'] });

引入RequireJS文件

<script data-main="js/main.js" src="require.js"></script>

使用RequireJS定義語句創建app.js

define(['angularAMD', 'angular-route'], function (angularAMD) { var app = angular.module("webapp", ['ngRoute']); app.config(function ($routeProvider) { $routeProvider.when("/home", angularAMD.route({ templateUrl: 'views/home.html', controller: 'HomeCtrl', controllerUrl: 'ctrl/home' })) }); return angularAMD.bootstrap(app); });

使用app.register創建控制器

define(['app'], function (app) { app.controller('HomeCtrl', function ($scope) { $scope.message = "Message from HomeCtrl"; }); });

點擊這里查看一個簡單的示例,你可以在這里查看到詳細的幫助文檔。

安裝

bower

bower install angularAMD

node

npm install angular-amd 

外鏈

//cdn.jsdelivr.net/angular.amd/0.2/angularAMD.min.js 

使用

定義require.js 入口文件

我們定義main.js 作為項目的入口文件,在這里可以定義我們的組件以及組件的依賴項;然后在deps里設置我們的項目主文件 app.js

// 定義入口文件 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'] }); 

啟動 AngularJS

當所有的組件依賴項全部被定義完成,那么app.js作為 Angular 項目的入口文件,將開始執行啟動程序.

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)將會取代程序啟動。

配置路由

通過使用 angularAMD.route 我們可以動態配置所需要加載的 controllers;

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,無論 你傳入什么樣的參數值進去,都會被返回。

這樣訪問 index.html#/home 就可以查看所做的修改了

相關鏈接

文章轉載自  angularAMD使用RequireJS和AngularJS快速構建WebApp


免責聲明!

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



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