AngularJs基礎學習指南(1)

来源:http://www.cnblogs.com/zh-helloworld/archive/2017/11/26/zh_helloworld.html
-Advertisement-
Play Games

1.AngularJs指的是angular 1.x框架,Angular一般指的是2和4 2.angularjs是什麼:是一個js框架,幫助我們寫頁面的,是由谷歌公司創建,遵循MIT協議,開源開放 3.angularjs主要應用於增刪改查等數據操作比較頻繁的,比如說購物車,後臺管理系統。然而游戲,圖形 ...


1.AngularJs指的是angular 1.x框架,Angular一般指的是24

2.angularjs是什麼:是一個js框架,幫助我們寫頁面的,是由谷歌公司創建,遵循MIT協議,開源開放

3.angularjs主要應用於增刪改查等數據操作比較頻繁的,比如說購物車,後臺管理系統。然而游戲,圖形界面的編譯器這種頻繁的操作dom模型是不適用的。

4.angularjs的特性:

(1)MVC模式(數據模型,視圖,控制器三部分)

(2)模塊系統

(3)指令系統

(4)依賴註入

(5)數據雙向綁定

5.angularjs的缺點

(1)dom操作支持較弱,當然也可以使用jq

(2)html中過多指令,事件綁定的操作,耦合度較高

6.為什麼需要mvcjs模塊化

(1)代碼規範越來越大,切分職責是大勢所趨

(2)為了復用代碼,很多邏輯都是一樣的,封裝

(3)為了方便後期的維護,修改一塊功能不影響其他功能

7.下麵是一些angularjs的使用語法:

(1)表達式:註意,使用angularjs時,需要先下載引入到項目目錄中

(2)html文件中,寫angularjs的語句時,要在父標簽的外部寫一條指令,用來知名入口文件,ng-app

(3){{1+2}} //3

(4){{1+2}}--{{[1,2,3,4][2]}}--{{{name:’allen’}.name}}--{{2>1?’haha’:’heihei’}}

(5)輸出結果是:3--3--allen--haha

(6)表達式定義變數:

只要賦值了在上面就能使用,不是說一個變數在上面定義,只能在下麵使用,而angularjs定義了變數之後,可以在變數前面使用,類似於變數提升,但又不完全是變數提升,因為這個輸出的就是變數的值,並不是undefined

(7)還有一個問題就是,我們在給一個變數賦值的時候,angularjs會把變數的值,執行一遍然後輸出出來,而實際上我們不想輸出,這時,就有了另外一條指令ng-init在這條指令裡面寫變數就可以在下麵用,註意指令是ng-什麼,這個指令是只能寫在標簽裡面的

(8)其實ng-app是為了定義主模塊的入口,就相當於在這個主模塊裡面寫js代碼。

8.定義主模塊:

var app = angular.module(‘myapp’,[])//第一個參數是模塊名,第二個參數先寫一個空數組

app.controller(‘mycontroller’,function($scope){//第一個參數是控制器名,第二個參數是函數

$scope.name = “二狗子”//註意函數的參數$scope是不可以修改的,叫依賴註入特性

})

<div ng-controller=”mycontroller”>

{name}//這是一個封地,說明是mycontroller這個控制器控制的,是可以訪問數據的

</div>

9.介紹一個指令:ng-bind:阻止花括弧閃現,因為當運行時不會執行這一句,當讀到引入angularjs的代碼的時候,angular會執行這句話,並且把標簽原有的內容隱藏掉,顯示現在

10.有一個依賴註入,是$scope,是作為一個函數的參數進行註入的,但是當項目上線的時候,需要壓縮代碼,會把原本長的參數,壓縮成一個短的字母,所以就不能用了,所以angular想了一個方法,用數組接收一下。

app.controller(“mycontroller”,[‘$http’,’$scope’,function(a,b){

b.name = “二狗”

}])

11.除了$scope這種函數參數不叫服務,別的在函數的參數裡面進行依賴註入的叫做服務,每一個服務都會提供一個功能,比如說:$rootscope作用:往根作用域掛數據,全局的,這是必須有控制器的,還有一種方法也可以實現全局,不用使用控制器

12.app.run(function($rootscope){

$rootscope.tel = ‘1111’

})

註意一種嵌套寫法,子元素可以繼承父元素的變數,但是父元素不可以機車繼承子元素的變數,全局變數都可以使用。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • feedparser模塊 1.簡介 feedparser是一個Python的Feed解析庫,可以處理RSS ,CDF,Atom 。使用它我們可從任何 RSS 或 Atom 訂閱源得到標題、鏈接和文章的條目了。 RSS(Really Simple Syndication,簡易信息聚合):是一種描述和同 ...
  • The GNU Compiler Collection (usually shortened to GCC) is a compiler system produced by the GNU Project supporting various programming languages. But ...
  • 1、Java常量的應用 語法:final 常量名 = 值; 舉一個簡單的例子 2、Java數組 Java中操作數組只需要四個步驟: (1)聲明數組 語法:數組類型[ ] 數組名; 或者數組類型 數組名[ ]; (2)分配空間 語法: 數組名 = new 數據類型 [ 數組長度 ]; 也可以直接合併 ...
  • 從0開始搭建自動部署環境(續) 前言 上一篇 "從0開始搭建自動部署環境" 雖然環境搭建起來了,但是配置少了一部分步驟。本來應該寫到上一篇中,但是這樣做篇幅過長了。另外,此篇會使用自動部署一個同步在Github上的Spring Boot項目為例,介紹如何使用該自動部署環境。 配置Global Too ...
  • 不管是java還是.net基礎設施必不可少。 MQ: 如果發現MQ是瓶頸。不管用的是rabbitmq還是kafka,其他的也好。作為生產者要確認超時時間、重試機制、非同步線程池。消費方要做兩件事:發現和解決。發現的主要是通過積壓閾值最快發現問題。解決的方法主要有:短期方案:增大線程數,增加伺服器。長期 ...
  • clipboard.js 可以實現純 JS 的從瀏覽器複製文本到系統剪貼板的功能。 使用方法: 1. 下載 clipboard.js,併在頁面中引入該插件。clipboard.js 下載地址: https://github.com/zenorocha/clipboard.js 2. 需要複製的目標文 ...
  • 原生js表單生成列表實現原理 這裡用到的一些方法有 insertBefore() createElement() appendChild() removeChild() and so on~~ 效果圖如下: ...
  • 【需求】 要實現的需求很簡單,頁面從A -> B,用戶在B觸發操作,將一些數據帶回到A頁面,在網上找了好久也只看到有人問,但總找不到很好答案。要實現的效果圖如下: 【聯想】 在 ios 開發中,頁面跳轉 A -> B -> C,到 C 頁面後,記憶體中一直存儲著 A 和 B 頁面的數據和狀態,通過導航 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...