angularjs與requirejs整合實用技巧
一、簡介
二、實用技巧展示
1、使用angularjs的過程中,很多只是將其當做引入系統中的乙個js外掛程式工具,而不是作為前台開發的主體框架,其和requirejs整合可以使前段js檔案使用管理更加方便,**更清晰易於管理。
(1)、從html中引用的js檔案介紹使用
html中直接需要引用require-conf.js
、angular-bootstrap.js、require.js,其中require-conf.js
、angular-bootstrap.js需要自己定義,require.js引用官方檔案即可,其核心引用在於userctrl。
(2)、定義require-conf.js檔案,對系統中用到的js檔案做統一配置管理
varpaths = ;
varshim =
以上**只簡單列舉部分引用js檔案,並新增依賴關係,此處並沒有與requirejs產生關聯,requirejs載入新增angular-bootstrap.js檔案:
varrequireconfig = ;
requirejs.config(requireconfig);
varrequired = ;
(function()
for(vari = 0; i < scripts().length;i++) };
})();
// 載入
controller
模組,啟動
angularjs應用
require(required,function() );
angular-bootstrap.js 是js載入的啟動器,html中所有引用的js由其統一載入,啟動後先讀取require-conf.js配置檔案,後根據配置的controller去載入頁面中用到的js檔案。require-conf.js中定義的各種js檔案如何被引用,controller將對其控制,userctrl簡單示例如下:
define([ 'core_business', 'jquery-cookie','customservice' , 'routeconfig'],function() ;
document.onkeydown =function(event)
};};
});上述**中設定了需要引用的檔案。
2、angularjs指令使用
通過靈活使用angular的directive可以定製各種風格的dom元素,也可以對頁面一系列元素做統一封裝,一次定義多次使用。如定義頁面導航條:
此類展示內容只需要乙個標籤引用即可實現:
<
business:header
>
business:header
>
,該標籤如下定義:
define(['core_service','xenon-toggles'],function());}
};});
});其中header.html裡對導航頁做了具體實現。通過business:header
和header
.html設定之後便可以在html中引用business:header>實現導航條效果。
3、filter使用
filter對於頁面元素的即時過濾是非常便利的,通過filter功能可以實現排序、運算、篩選等能力。filter經過一次定義之後可以被系統中其他模組復用,filter定義示例如下:
define([ 'core_business' ],function() ;;
}]);
angular.module("business").filter('searchfilter', [ '$rootscope',function($rootscope)
varmatcharray = ;
keyword =keyword.tolocalelowercase();
if(filterarray !=null&& filterarrayinstanceofarray)}}
returnmatcharray;
};}]);
});以上**可實現頁面資料帥選的能力。如有選單列表篩選資料對比。
html中引用示例:
html中使用filter,需要在controller中引用定義filter的檔案,可以直接實用angularjs提供的filter能力如排序、大小寫轉換等能力。
AngularJs與ReactJS優缺點 適用場景
angularjs是一套完整的框架,angular有自帶的資料繫結 render渲染 angularui庫,過濾器,directive 模板 服務q defer inject 依賴注入 factory,provider 等等一系列工具,基本上只要你在做web開發用過的東西,它都有乙個。但是這些東西r...
AngularJs與ReactJS優缺點 適用場景
angularjs是一套完整的框架,angular有自帶的資料繫結 render渲染 angularui庫,過濾器,directive 模板 服務q defer inject 依賴注入 factory,provider 等等一系列工具,基本上只要你在做web開發用過的東西,它都有乙個。但是這些東西r...
angularJS與vueJS的區別
vuejs和angularjs都是mvvm框架,不過vue專注於view層,主打的就是輕量級,而angularjs則比較全面,相對的就不如vuejs快捷,以下是我總結的一些區別 1.angularjs上手難,而vuejs簡單易學 2.angularjs的指令都是ng 而vuejs的指令都是v 3.a...