angular從入門到...之hello world

前端開發工程化是將來趨勢,目前最火的3大框架分別是angular,vue 和 react。react不太熟悉,應該更多偏向app開發中native與js混合。而angular、vue更多以工程的形式實現先後端分離開發。css

 

angular從2.0開始,實際上是一個新的實現,與1.0的angularjs沒有太多的關係。目前angular已升級到5.0版本,官網是https://angular.io/。html

 

angular要求node 6.9.x 和 npm 3.x.x 以上的版本,以下幾步開始一個hello world的app。前端

1,全局安裝vue

npm install -g @angular/clinode

2,建立一個新項目python

ng new my-appreact

會自動建立項目,並自動npm install。這一點比vue就自動不少,vue的項目要手動npm install。angularjs

3,運行程序npm

cd my-app 後端

ng serve --open

編譯運行,會自動打開瀏覽器的4200端口:

http://localhost:4200/

默認的效果以下圖:

 

生成的工程模板裏,已有一個默認的app,這個就是根app。

咱們打開src/app/components.ts,修改title的值,

export class AppComponent {
  title = '歡迎來到ailabx';
}

angular是自動更新的,即程序更改了,瀏覽器不須要咱們自動刷新就會看到最新的效果。

而後咱們修改樣式看看,在src/app/conponents.css

h1 {  color: #369;  font-family: Arial, Helvetica, sans-serif;  font-size: 250%;}

能夠看到,標題的字段,顏色都變化了。

 

 

 

如今咱們實現一個「英雄聯盟」的簡單例子。

appcomponent這個類的成員變量,title,hero的值

export class AppComponent {  title = 'Tour of Heroes';  hero = 'Windstorm';

}

 

而後修改模板:

@Component({
  selector: 'app-root',
  //templateUrl: './app.component.html',
  template: `<h1>{{title}}</h1><h2>{{hero}} details!</h2>`,
  styleUrls: ['./app.component.css']
})
template: `
<h1>{{title}}</h1>
<h2>{{hero.name}} details!</h2>
<div><label>id: </label>{{hero.id}}</div>
<div><label>name: </label>{{hero.name}}</div>
`,

模板支持多行表示。

//注意:這裏要寫在component上方,英雄的類
export class Hero {
  id: number;
  name: string;
}
@component ...
export class AppComponent {
  title = 'Tour of Heroes';
  hero: Hero = {
      id:1,
      name:'wei'
  };
}

要使用ngModel,還要額外在app.modules.ts裏導入:

import { FormsModule }   from '@angular/forms'; // <-- NgModel lives here
imports: [
  ...,
  FormsModule
],
 
而後模板裏使用以下ngModel指令便可實現name字段與文本框的雙向綁定。
<input [(ngModel)]="hero.name" placeholder="name">

 

關於做者:魏佳斌,互聯網產品/技術總監,北京大學光華管理學院(MBA),特許金融分析師(CFA),資深產品經理/碼農。偏心python,深度關注互聯網趨勢,人工智能,AI金融量化。致力於使用最前沿的認知技術去理解這個複雜的世界。

掃描下方二維碼,關注:AI量化實驗室(ailabx),瞭解AI量化最前沿技術、資訊。

相關文章
相關標籤/搜索