今天主要跟大家詳細講解一下angularjs的三大模組: modal,controller,view。
先跟大家說一下這三個模組之間的關係。
1.資料模型(modal)主要提供資料。它不會和視圖(view)直接操作。
2.controller保存modal提供的數據,與視圖進行操作。
3.view是視圖,也就是頁面展示。
4.總而言之,controller負責資料和視圖之間的通信,就是兩者的介面人。他們分工明確,實現了模組化。
一.如何使用資料模型(modal)?
講到資料模型,我們再來看看上一節教學的範例:
<!DOCTYPE html> <html ng-app="app"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="angular-1.2.19/angular.js"></script> <!-- 引入了AngularJS包 --> <script src="controll.js"></script> //引入控制器 </head> <body> <div ng-controller="controller"> <input type="text" ng-model="text"> <b>{{greeting.text}} {{text}}</b> </div> </body> </html>
1.先引入,angularjs包,啟動的時候先是去找ng-app指令,也就指定了整個的作用域;
2.接著會繼續找到特定的指令,這裡會找到ng-model,定義了一個「text」的資料模型。
3.下面使用了text的這個模型,所以實現了雙向綁定。 (只要在ng-app的作用域內,都能直接使用text)
二.如何使用控制器(controller)?
先說一下使用控制器的幾個重點:
1.不要檢視重複使用controller,一個控制器一般只負責一小塊視圖(一一對應);
2.不要在controller中直接操作DOM,這不是控制器的職責,操作DOM要使用指令derective(見上節教學);
3.不要在controller中進行資料過濾的操作,有專門的filter服務來實現這一塊;
4.一般來說,不同的controller之間是不互相呼叫的,控制器的互動一般透過事件進行。
接著我們來看上面程式碼藍色的部分,controll.js的內容是:
function controller($scope){ $scope.greeting = { text : 'hello' }; }
angularjs找到一個ng-controller的指令,然後會找到定義這個指令的地方,就是controll.js文件,然後可以使用greeting.text直接取得到他的值。
三.如何使用視圖(view)?
說到如何使用視圖,就必須提到directive。 (這裡是新的知識了喲!!!!)
以下來看一段程式碼:
var appModule = angular.module('app', []); //app是html中ng-app指令的名称 appModule.directive('hello', function() { //定义一个指令,名称叫hello return { restrict: 'E', template: '<div>Hi there</div>', replace: true }; });
上面的程式碼定義了一個指令標籤,你可以直接在html中試試
然後我再談解每個屬性的意義:
1.restrict :(字串)可選參數,指明指令在DOM裡面以什麼形式被宣告。取值有:E(元素),A(屬性),C(類),M(註);上面的範例設定為元素形式(
2.template: (字串或函數)可選參數,傳回的內容,上面的範例回傳的是一個div;
3.templateUrl: 同上,透過url傳回內容,如果傳回內容很多,建議使用此屬性。
4.relace:(布林值),預設值為false。上面的例子設為了true:頁面使用hello標籤後會被傳回的div取代。
5.transclude:(布林值),設為true時。這個配置選項可以讓我們提取包含在指令那個元素裡面的內容,再將它放置在指令模板的特定位置,與ng-transclude合用。
6.還有一些其他屬性,具體大家再慢慢了解吧。 。 。
OK,以上就是對這3個主要模組的使用說明了。希望對大家的學習有幫助啦。 。 。如果對於上面的筆記有不懂的地方,儘管問我,我一定會給大家解答的。祝大家生活愉快!

JavaScript核心數據類型在瀏覽器和Node.js中一致,但處理方式和額外類型有所不同。 1)全局對像在瀏覽器中為window,在Node.js中為global。 2)Node.js獨有Buffer對象,用於處理二進制數據。 3)性能和時間處理在兩者間也有差異,需根據環境調整代碼。

JavaScriptusestwotypesofcomments:single-line(//)andmulti-line(//).1)Use//forquicknotesorsingle-lineexplanations.2)Use//forlongerexplanationsorcommentingoutblocksofcode.Commentsshouldexplainthe'why',notthe'what',andbeplacedabovetherelevantcodeforclari

Python和JavaScript的主要區別在於類型系統和應用場景。 1.Python使用動態類型,適合科學計算和數據分析。 2.JavaScript採用弱類型,廣泛用於前端和全棧開發。兩者在異步編程和性能優化上各有優勢,選擇時應根據項目需求決定。

選擇Python還是JavaScript取決於項目類型:1)數據科學和自動化任務選擇Python;2)前端和全棧開發選擇JavaScript。 Python因其在數據處理和自動化方面的強大庫而備受青睞,而JavaScript則因其在網頁交互和全棧開發中的優勢而不可或缺。

Python和JavaScript各有優勢,選擇取決於項目需求和個人偏好。 1.Python易學,語法簡潔,適用於數據科學和後端開發,但執行速度較慢。 2.JavaScript在前端開發中無處不在,異步編程能力強,Node.js使其適用於全棧開發,但語法可能複雜且易出錯。

javascriptisnotbuiltoncorc; sanInterpretedlanguagethatrunsonenginesoftenwritteninc.1)JavascriptwasdesignedAsignedAsalightWeight,drackendedlanguageforwebbrowsers.2)Enginesevolvedfromsimpleterterpretpretpretpretpreterterpretpretpretpretpretpretpretpretpretcompilerers,典型地,替代品。

JavaScript可用於前端和後端開發。前端通過DOM操作增強用戶體驗,後端通過Node.js處理服務器任務。 1.前端示例:改變網頁文本內容。 2.後端示例:創建Node.js服務器。

選擇Python還是JavaScript應基於職業發展、學習曲線和生態系統:1)職業發展:Python適合數據科學和後端開發,JavaScript適合前端和全棧開發。 2)學習曲線:Python語法簡潔,適合初學者;JavaScript語法靈活。 3)生態系統:Python有豐富的科學計算庫,JavaScript有強大的前端框架。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

WebStorm Mac版
好用的JavaScript開發工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Atom編輯器mac版下載
最受歡迎的的開源編輯器

Dreamweaver CS6
視覺化網頁開發工具