首先爲何要寫這樣的一篇文章呢?主要是由於前段時間寫過一些關於Angualr的相關實戰文章,有些愛學習的小夥伴對這方面比較感興趣,可是又不知道該怎麼入手(由於認識個人大多數小夥伴都是後端的同窗),因此今天準備出一篇Angular學習資料彙總和平常開發中使用比較頻繁的語法總結。讓更多的後端程序員更好的瞭解學習Angualr,拓展本身的技術棧。php
Angular 是一個應用設計框架與開發平臺,用於建立高效、複雜、精緻的單頁面應用。html
對於咱們而言不管是學習什麼技術,首先一點不要忽視了官網的重要性,並且Angular官網還有中文版的相對而言更容易上手。程序員
https://angular.cn/docsangularjs
https://www.runoob.com/angularjs/angularjs-tutorial.html github
對於一些初學者而言,假如不知道該怎麼作的話最好推薦先看看視頻,熟悉一下Angualr的開發的基本流程。
https://www.bilibili.com/video/BV1bt411e71b?from=search&seid=14846265447217622438
https://www.bilibili.com/video/BV1i741157Fj?from=search&seid=14846265447217622438
<button (click) = "share()"> share </button>
<button (click) = "share()"> share </button>
<p ng-hide="true"> //隱藏 <p ng-hide="false">//顯示
=============Html============= <div class="set-select"> <label for="rankbutton">選擇平臺</label> <select id="rankbutton" [(ngModel)]="platform" (ngModelChange)="set_platform()"> <select id="rankbutton" [(ngModel)]="platform"> <option *ngFor="let item of platforms" [value]='item.key'>{{item.value}}</option> </select> </div> ============Ts================ platform = 'wx'; platforms: any = [ { key: 'wx', value: '微信' }, { key: 'tt', value: '百度' }, { key: 'wb', value: '微博' }, { key: 'bjh', value: '抖音' }, { key: 'zcool', value: '淘寶' }, ]; set_platform() { this.platform console.log('this.platform:',this.platform) }
<input placeholder="input here" (input)="onInput($event)" />
<a [title]="product.name+'描述'">
七、[(ngModel)]
:雙向綁定:NgModel 指令容許你顯示數據屬性並在用戶進行更改時更新該屬性。這是一個例子:
src/app/app.component.html (NgModel example) content_copy <input [(ngModel)]="currentItem.name" id="example-ngModel" name='currentName'> //注意某些狀況下須要加name表示惟一標識,不加的話可能會報錯
導入 FormsModule 以使用 ngModel
要想在雙向數據綁定中使用 ngModel 指令,必須先導入 FormsModule 並將其添加到 NgModule 的 imports 列表中。要了解關於 FormsModule 和 ngModel 的更多信息,參閱表單一章。
記住,要導入 FormsModule 才能讓 [(ngModel)] 可用,以下所示:
src/app/app.module.ts (FormsModule import) content_copy import { FormsModule } from '@angular/forms'; // <--- JavaScript import from Angular /* . . . */ @NgModule({ /* . . . */ imports: [ BrowserModule, FormsModule // <--- import into the NgModule ], /* . . . */ }) export class AppModule { }
{{...}}:
花括號之間的文本一般是組件屬性的名字。Angular 會把這個名字替換爲響應組件屬性的字符串值。
<p>{{title}}</p> <div><img src="{{itemImageUrl}}"></div>
<div class="text" [innerHTML]="richText"></div>
屬性index、count、first、last、even、odd
<ul> <li *ngFor="let item of datasource; let o=odd,let e=even" [ngClass]="{odd-action: o,even-action: e}"> <card-item [item]="item"></card-item> </li> </ul>
ng-repeat
循環使用:<h1 ng-repeat="x in records">{{x}}</h1> <script> var app = angular.module("myApp", []); app.controller("myCtrl", function($scope) { $scope.records = [ "菜鳥教程1", "菜鳥教程2", "菜鳥教程3", "菜鳥教程4", ] }); </script>
//在angular中沒有else只能都經過ng-if來判斷 <p ng-if="OwnStatus==0">準備中</p> <p ng-if="OwnStatus==1">進行中</p> <p ng-if="OwnStatus==2">已經完成</p>
指令 | 描述 |
---|---|
ng-app | 定義應用程序的根元素。 |
ng-bind | 綁定 HTML 元素到應用程序數據 |
ng-bind-html | 綁定 HTML 元素的 innerHTML 到應用程序數據,並移除 HTML 字符串中危險字符 |
ng-bind-template | 規定要使用模板替換的文本內容 |
ng-blur | 規定 blur 事件的行爲 |
ng-change | 規定在內容改變時要執行的表達式 |
ng-checked | 規定元素是否被選中 |
ng-class | 指定 HTML 元素使用的 CSS 類 |
ng-class-even | 相似 ng-class,但只在偶數行起做用 |
ng-class-odd | 相似 ng-class,但只在奇數行起做用 |
ng-click | 定義元素被點擊時的行爲 |
ng-cloak | 在應用正要加載時防止其閃爍 |
ng-controller | 定義應用的控制器對象 |
ng-copy | 規定拷貝事件的行爲 |
ng-csp | 修改內容的安全策略 |
ng-cut | 規定剪切事件的行爲 |
ng-dblclick | 規定雙擊事件的行爲 |
ng-disabled | 規定一個元素是否被禁用 |
ng-focus | 規定聚焦事件的行爲 |
ng-form | 指定 HTML 表單繼承控制器表單 |
ng-hide | 隱藏或顯示 HTML 元素 |
ng-href | 爲 the <a> 元素指定連接 |
ng-if | 若是條件爲 false 移除 HTML 元素 |
ng-include | 在應用中包含 HTML 文件 |
ng-init | 定義應用的初始化值 |
ng-jq | 定義應用必須使用到的庫,如:jQuery |
ng-keydown | 規定按下按鍵事件的行爲 |
ng-keypress | 規定按下按鍵事件的行爲 |
ng-keyup | 規定鬆開按鍵事件的行爲 |
ng-list | 將文本轉換爲列表 (數組) |
ng-model | 綁定 HTML 控制器的值到應用數據 |
ng-model-options | 規定如何更新模型 |
ng-mousedown | 規定按下鼠標按鍵時的行爲 |
ng-mouseenter | 規定鼠標指針穿過元素時的行爲 |
ng-mouseleave | 規定鼠標指針離開元素時的行爲 |
ng-mousemove | 規定鼠標指針在指定的元素中移動時的行爲 |
ng-mouseover | 規定鼠標指針位於元素上方時的行爲 |
ng-mouseup | 規定當在元素上鬆開鼠標按鈕時的行爲 |
ng-non-bindable | 規定元素或子元素不能綁定數據 |
ng-open | 指定元素的 open 屬性 |
ng-options | 在 <select> 列表中指定 <options> |
ng-paste | 規定粘貼事件的行爲 |
ng-pluralize | 根據本地化規則顯示信息 |
ng-readonly | 指定元素的 readonly 屬性 |
ng-repeat | 定義集合中每項數據的模板 |
ng-selected | 指定元素的 selected 屬性 |
ng-show | 顯示或隱藏 HTML 元素 |
ng-src | 指定 <img> 元素的 src 屬性 |
ng-srcset | 指定 <img> 元素的 srcset 屬性 |
ng-style | 指定元素的 style 屬性 |
ng-submit | 規定 onsubmit 事件發生時執行的表達式 |
ng-switch | 規定顯示或隱藏子元素的條件 |
ng-transclude | 規定填充的目標位置 |
ng-value | 規定 input 元素的值 |