国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

Angularjs筆記

2024-04-27 15:13:10
字體:
來源:轉載
供稿:網友

這里是參照慕課網大漠窮秋老實的的視頻Angularjs實戰視頻

1.index.html文件 一般用于加載js文件 其中并不需要太多的代碼 ion-nav-view可以滿足加載視圖2.在js目錄中 每個js文件的分工都明確 例如 controller.js 中只放控制器 可能是多個 route.js中主要是路由 同樣也可能是多個3.路由中ngRoute和uiRoute的選擇和區別 route的引包順序 必須至于angular.js的后面  uiRoute相對ngRoute來說可以嵌套更深層次的路由 ngRoute是angular自帶的路由 而uiRoute是根據ngRoute開發的第三方插件
4.directive :自定義指令

angular.module('MyApp',[])    .controller('MyCtrl',function($scope){        $scope.Name="";    })    .directive("hello",function(){//自定義標簽 directive        return{            restrict:'EACM',//E:作為元素名使用,A:作為屬性使用,C:作為類名使用,M:作為注釋使用,默認為EA            transclude:true,            template:'<div>他的名字是<span ng-bind="Name"></span><div ng-transclude></div></div>',            replace:'true'//是否刪除外層的自定義標簽        }    })    //run方法 當所注冊器加載完所有模塊時 會執行一次.run(function($templateCache){    $templateCache.put("hello.html","<div>Hello Everyone!!</div>")})
在template中拼接太多的html標簽會顯得累贅且可讀性差 所以可以用templateUrl在后面直接跟html文件的地址
templateUrl:'hello.html',
如果希望在自定義標簽中顯示html標簽 那么可以再directive中添加屬性transclude↑↑↑
5.例:當鼠標進入或者穿過元素時 執行加載事件
angular.module('MyApp',[])    .controller('MyCtrl',function($scope){        $scope.Name="";        $scope.loadData = function(){            console.log("正在加載數據。。。。。。");        }    })
   .directive("loader",function(){        return{            restrict:"AEMC",            link:function(scope,element,attr){//scope指的$scope element指的當前directive元素 attr這個元素的屬性                element.bind("mouseenter",function(){//bind() 方法為被選元素添加一個或多個事件處理程序,并規定事件發生時運行的函數。mouseenter:鼠標進入事件                    scope.loadData();//scope.apply("loadData")                })            }        }     })
如果同時有兩個控制器想用該標簽 但是因為控制器不同 標簽不同 可以采用賦予屬性的方法 例如:
<loader howToLoad="loadData()">加載數據</loader>
scope.$apply(attrs.howtoload);//要寫成小寫6.ng的form指令
	和原生的form的區別
		6.1:HTML原生的表單是不能嵌套的 而ng封裝后的表單是可以嵌套的
		6.2:ng為表單擴展了校驗和防止重復提交功能
		6.3:ng對input的type進行了擴展(text,number,url,email,radio,checkbox,hidden,button,submit,reset)
		6.4:ng為表單內置了4種CSS樣式(ng-invalid:字段內容是非法的,ng-PRistine:表單沒有填寫記錄,ng-dirty:表單有填寫記錄,ng-valid:字段內容合法的)		
		6.5:內置了校驗器(require:不能為空,minlength:最小長度,maxlength:最大長度)
	設置按鈕是否可用:ng-disabled
7.$http
	一個簡單的http請求
 $scope.GetList = function(){           $http.get("Hello.json").success(function(data){                console.log(data);           }).error(function(data){                console.log(data);           })        }
8.filter自定義
	html的代碼:
	<p>{{1239123 | filter1 }}</p>	js的代碼:
    .filter("filter1",function(){        return function (item){            return item+"O(∩_∩)O~~"        }    })
最后頁面上成功顯示1239123O(∩_∩)O~~
如果沒有自定義 可以直接用 例如
<p>{{1239123 | date:"yyyy-MM-dd hh-mm-ss"}}</p>
頁面顯示
1970-01-01 08-20-39
	
				

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 曲松县| 横峰县| 五家渠市| 类乌齐县| 沅江市| 绥滨县| 乐至县| 沛县| 乐至县| 化州市| 南汇区| 富阳市| 泰宁县| 上饶市| 新沂市| 府谷县| 辉南县| 泸溪县| 新郑市| 七台河市| 闵行区| 苍山县| 喀什市| 莱芜市| 和平区| 乐陵市| 孟津县| 古蔺县| 莎车县| 镇康县| 舟曲县| 察哈| 灵宝市| 徐汇区| 囊谦县| 封开县| 大方县| 明溪县| 永新县| 达孜县| 河西区|