欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

angular.js + require.js構(gòu)建模塊化單頁面應(yīng)用的方法步驟

 更新時(shí)間:2017年07月19日 11:43:49   作者:leason-love  
這篇文章主要給大家介紹了關(guān)于利用angular.js + require.js構(gòu)建模塊化單頁面應(yīng)用的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。

前言

本文主要給大家介紹的是關(guān)于利用angular.js + require.js構(gòu)建模塊化單頁面應(yīng)用的方法,分享出來供大家參考學(xué)習(xí),需要的朋友們下面來一起看看詳細(xì)的介紹吧。

AngularJS描述:

angularjs是可以用來構(gòu)建WEB應(yīng)用的,WEB應(yīng)用中的一種端對端的完整解決方案。通過開發(fā)者呈現(xiàn)一個(gè)更高層次的抽象來簡化應(yīng)用的開發(fā)。最適合的就是用它來構(gòu)建一個(gè)CRUD應(yīng)用,它提供了非常方便的且統(tǒng)一高效的解決方案,其數(shù)據(jù)綁定、基本模版標(biāo)識符、表單驗(yàn)證、路由、深度鏈接、組件重用、依賴注入、以及HTML標(biāo)記等,最受歡迎的莫過于它的雙向數(shù)據(jù)綁定。

requireJS描述:

requireJS是來解決傳統(tǒng)的頁面加載script標(biāo)記操作,通過其初始化配置實(shí)現(xiàn)按需、并行、延時(shí)的載入js庫,聲明不同js文件之間的依賴關(guān)系,它是遵循前端AMD規(guī)范(異步模塊加載)。js代碼可以以模塊化的方式進(jìn)行組織(模塊化編程)。模塊化的意義就是通過代碼邏輯表明模塊之間的依賴關(guān)系和執(zhí)行順序,按照模塊邏輯來分解代碼,起到配合mvc框架架構(gòu)項(xiàng)目的作用。

整合:

使用requireJS模塊化定義模塊質(zhì)檢的依賴關(guān)系,打包不需要文件挨個(gè)對照,很方便。將script腳本從模版頁面中抽離出來,通過js當(dāng)前模塊加載需要依賴的js模塊。按需加載。路由更加方便。

實(shí)踐—–目錄結(jié)構(gòu)

這里文件目錄可以根據(jù)項(xiàng)目需求自由調(diào)整

實(shí)踐—–index.html

和正常的html寫法一樣,這里要注意引入js時(shí)只要引用main和require.js,由require.js去動(dòng)態(tài)加載所需要的js

<div class="main">
 <div class="header">
  <div class="right-bar">
   <span class="welcome">當(dāng)前用戶:<b>...</b> <button class="btn btn-info btn-xs"><i class="fa fa-sign-out"></i> 注銷</button></span>
  </div>
 </div>
 <div class="mainContent has-shadow">
  <div ng-view></div>
 </div>
</div>
<script data-main="js/main" src="js/libs/require.js"></script>//只要引用main和require.js

實(shí)踐—–入口文件main.js

實(shí)例化require.js并配置各種js的路徑以及依賴關(guān)系,初始化整個(gè)項(xiàng)目

/**
 * 入口文件
 */
require.config({
 baseUrl: "js/",
 paths: {
  "jquery": "libs/jquery203",
  "angular" : "libs/angular.min",
  "angular-route" : "libs/angular-route.min",
  "angular-sanitize" : "libs/angular-sanitize.min",


  "app" : "controllers/app",
  "loadingInterceptor" : "controllers/loadingInterceptor",
  "run_stateCtrl" : "controllers/run_stateCtrl",

  "route" : "routes/appRoute"
 },
 shim: {
  'angular': {
   exports: 'angular'
  },
  'angular-route':{
   deps: ["angular"],
   exports: 'angular-route'
  },
  'angular-sanitize':{
   deps: ["angular"],
   exports: 'angular-sanitize'
  }
 }
});
require(['jquery','angular','angular-route','angular-sanitize','app','loadingInterceptor','route','run_stateCtrl'],function ($,angular){

  $(function () {

   angular.bootstrap(document,["myApp"]);//初始化整app

  })

});

實(shí)踐—–建立angular.module 即app.js

建立angular.module,所有的操作都是在angular.module的基礎(chǔ)上進(jìn)行的

/**
 * 建立angular.module
 */
define(['angular'], function (angular) {
 var app = angular.module('myApp', ['ngRoute','ngSanitize','ajaxLoading']);//引入需要以來的模塊
 return app;
});

實(shí)踐—–建立路由

不同的模塊被加載進(jìn)主視圖,并綁定控制器

/**
 * 路由
 */
define(['app'], function(app){
 return app.config(['$routeProvider',function($routeProvider) {
   $routeProvider
    .when('/', {
    templateUrl: 'js/views/run_state.html',
    controller: 'run_stateCtrl'
    })
    .when('/xq', {
    templateUrl: 'js/views/xq.html',
    controller: 'xqCtrl'
    })
    .otherwise({ redirectTo: '/' });
 }])
});

實(shí)踐—–模塊控制器

被路由綁定的模塊控制器,控制著當(dāng)前模塊的業(yè)務(wù)流程

define(['app'], function(app){  
 return app.controller('run_stateCtrl', ['$scope','$rootScope','$http', function ($scope,$rootScope,$http) {

   $rootScope.headTitle = $rootScope.title = "hello,angular!";
   $rootScope.appName = $rootScope.span = "angular側(cè)導(dǎo)航";
   $scope.getMore = function(){
    angular.element('.state').text('正在運(yùn)行')
   };
   $http.get('./json/215145.json').
    success(function(data) {
    $scope.branchs = data.branchs;    
    });
  }])
});

總結(jié)

整體的模塊搭建完之后,具體的業(yè)務(wù)流程,根據(jù)angularjs的API來具體實(shí)現(xiàn)功能。

好了,以上就是這篇文章的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • AngularJS指令與指令之間的交互功能示例

    AngularJS指令與指令之間的交互功能示例

    這篇文章主要介紹了AngularJS指令與指令之間的交互功能,結(jié)合實(shí)例形式分析了AngularJS指令交互操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2016-12-12
  • Angularjs上傳文件組件flowjs功能

    Angularjs上傳文件組件flowjs功能

    現(xiàn)在的項(xiàng)目,無論代銷,幾乎不會(huì)缺省的一個(gè)功能就是上傳下載功能,今天談一談使用AngularJS+bootsrtap下的上傳下載功能,需要的朋友參考下吧
    2017-08-08
  • angular組件間傳值測試的方法詳解

    angular組件間傳值測試的方法詳解

    這篇文章主要給大家介紹了關(guān)于如何測試angular組件間傳值的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用angular組件具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • angularjs實(shí)現(xiàn)猜大小功能

    angularjs實(shí)現(xiàn)猜大小功能

    這篇文章主要為大家詳細(xì)介紹了angularjs實(shí)現(xiàn)猜大小功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 基于angularJS的表單驗(yàn)證指令介紹

    基于angularJS的表單驗(yàn)證指令介紹

    下面小編就為大家?guī)硪黄赼ngularJS的表單驗(yàn)證指令介紹。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • AngularJS學(xué)習(xí)第二篇 AngularJS依賴注入

    AngularJS學(xué)習(xí)第二篇 AngularJS依賴注入

    這篇文章主要為大家詳細(xì)介紹了AngularJS學(xué)習(xí)第二篇,理解什么是AngularJS依賴注入,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • 通過AngularJS實(shí)現(xiàn)圖片上傳及縮略圖展示示例

    通過AngularJS實(shí)現(xiàn)圖片上傳及縮略圖展示示例

    本篇文章主要介紹了通過AngularJS實(shí)現(xiàn)圖片上傳及縮略圖展示,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-01-01
  • AngularJS單選框及多選框?qū)崿F(xiàn)雙向動(dòng)態(tài)綁定

    AngularJS單選框及多選框?qū)崿F(xiàn)雙向動(dòng)態(tài)綁定

    這篇文章主要為大家詳細(xì)介紹了AngularJS單選框及多選框?qū)崿F(xiàn)雙向動(dòng)態(tài)綁定的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-01-01
  • angular.js+node.js實(shí)現(xiàn)下載圖片處理詳解

    angular.js+node.js實(shí)現(xiàn)下載圖片處理詳解

    這篇文章主要介紹了angular.js+node.js實(shí)現(xiàn)下載圖片處理的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • Angular.js通過自定義指令directive實(shí)現(xiàn)滑塊滑動(dòng)效果

    Angular.js通過自定義指令directive實(shí)現(xiàn)滑塊滑動(dòng)效果

    這篇文章主要給大家介紹了關(guān)于Angular.js如何通過自定義指令directive實(shí)現(xiàn)滑塊滑動(dòng)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用angularjs具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。
    2017-10-10

最新評論