深入理解angular2啟動(dòng)項(xiàng)目步驟
1. 創(chuàng)建項(xiàng)目文件夾
創(chuàng)建一個(gè)新的文件夾來(lái)保存你的項(xiàng)目,比如一開始有個(gè)self就好了

2.安裝基礎(chǔ)庫(kù)
首先確保已經(jīng)安裝了node.js
我們使用 npm package manager 來(lái)安裝需要的開發(fā)庫(kù)和開發(fā)工具。
打開終端窗口,輸入下面的命令。
npm install
如果在執(zhí)行npm install命令時(shí)沒有出現(xiàn)npm ERR!,一起都好??赡軙?huì)有幾個(gè)npm WARN消息,這也沒有影響。
我們會(huì)經(jīng)常在一連串的gyp ERR!(gyp: generate your project)消息后看到一個(gè)npm WARN消息。不用管他們。一個(gè)包會(huì)使用node-gyp重新編譯自己。如果重新編譯失敗,包會(huì)恢復(fù)(場(chǎng)使用一個(gè)預(yù)編譯版本),一切正常工作。
只要保證在npm install命令最后面沒有npm ERR!就好。
之后再執(zhí)行下面的命令
npm init -y npm i angular2@2.0.0-alpha.44 --save --save-exact npm i live-server --save-dev
這些命令將會(huì)創(chuàng)建名為 package.json 的項(xiàng)目文件,安裝相應(yīng)的軟件包,現(xiàn)在的 package.json 看起來(lái)應(yīng)該如下所示。
{
"name": "angular2-getting-started",
"version": "1.0.0",
"dependencies": {
"angular2": "2.0.0-alpha.44"
},
"devDependencies": {
"live-server": "^0.8.1"
}
}
還需要一個(gè) scripts 的配置節(jié),找到并替換為如下的內(nèi)容, 如果在你的文件中沒有這個(gè)配置節(jié), 那就加上好了.
"scripts": {
"start": "live-server"
}
3. 第一個(gè) Angular Component
添加一個(gè)名為 app.js 的文件,輸入下面的內(nèi)容。
var AppComponent = ng
.Component({
selector: 'my-app',
template: '<h1>My First Angular 2 App</h1>'
})
.Class({
constructor: function () { }
});
我們正在創(chuàng)建一個(gè)名為 AppComponent 的可視組件,通過(guò)使用全局的 ng 命名空間下的 Component 和 Class 方法來(lái)完成。
var AppComponent = ng
.Component({...})
.Class({...})
Component 方法需要一個(gè)包含兩個(gè)屬性的配置對(duì)象。selecter 屬性告訴 Angular 需要控制名為 "my-app" 的元素。一旦遇到 my-app 元素,Angular 將會(huì)創(chuàng)建和顯示 AppComponent 實(shí)例
template 屬性定義了組件的可視外觀。在這個(gè)示例中,我們使用了內(nèi)聯(lián)的模板,我們也可以把這個(gè)模板調(diào)整到一個(gè)模板文件中,然后通過(guò) templateUrl 來(lái)關(guān)聯(lián)模板文件的名稱來(lái)使用它。
我們使用 Class 方法實(shí)現(xiàn)這個(gè)組件本身的內(nèi)容,可以定義屬性,方法并綁定到這個(gè)視圖
現(xiàn)在的組件是一個(gè)最小化的實(shí)現(xiàn),構(gòu)造函數(shù)中沒有內(nèi)容。在以后的示例中,我們會(huì)看到很多有趣的內(nèi)容。
4. 啟動(dòng)應(yīng)用
我們需要在應(yīng)用中做點(diǎn)什么,在 app.js 的最后,添加下面的內(nèi)容。
document.addEventListener('DOMContentLoaded', function() {
ng.bootstrap(AppComponent);
});
我們等到瀏覽器通知我們說(shuō),內(nèi)容已經(jīng)加載完成了,然后再調(diào)用 bootstrap 方法。
bootstrap 方法通知 Angular 使用 AppComponent 作為應(yīng)用的根來(lái)啟動(dòng)應(yīng)用,
應(yīng)該可以猜到, 在應(yīng)用變得復(fù)雜的情況下, 我們會(huì)創(chuàng)建一個(gè) Component 的樹來(lái)完成復(fù)雜的工作.
Wrapped in an IIFE
我們不希望污染全局命名空間,但是,現(xiàn)在還不需要應(yīng)用到命名空間,我們直接使用 IIFE ( Immediately Invoked Function Execution ) 來(lái)封裝我們的代碼。
(function() {
var AppComponent = ng
.Component({
selector: 'my-app',
template: '<h1>My First Angular 2 App</h1>'
})
.Class({
constructor: function () { }
});
document.addEventListener('DOMContentLoaded', function() {
ng.bootstrap(AppComponent);
});
})();
5. 創(chuàng)建 index.html
在項(xiàng)目文件夾中添加名為 index.html 的頁(yè)面,內(nèi)容如下:
<html> <head> <title>Angular 2 QuickStart</title> <script src="node_modules/angular2/bundles/angular2.sfx.dev.js"></script> <script src="app.js"></script> </head> <body> <my-app></my-app> </body> </html>
在 head 中,我們的應(yīng)用加載了兩個(gè)腳本
angular2.sfx.dev.js, Angular2 的開發(fā)庫(kù)
app.js, 我們剛剛開發(fā)的腳本。
在 body 中,使用了名為 <my-app> 的元素,這是應(yīng)用的根的占位,Angular 將在這里顯示我們的應(yīng)用。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
淺析Angular 實(shí)現(xiàn)一個(gè)repeat指令的方法
這篇文章主要介紹了Angular 實(shí)現(xiàn)一個(gè)repeat指令的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07
AngularJS基礎(chǔ) ng-keypress 指令簡(jiǎn)單示例
本文主要介紹AngularJS ng-keypress 指令,這里對(duì)ng-keypress指令的基礎(chǔ)資料整理,并附有實(shí)例代碼,需要的小伙伴參考下2016-08-08
Angular使用$http.jsonp發(fā)送跨站請(qǐng)求的方法
這篇文章主要介紹了Angular使用$http.jsonp發(fā)送跨站請(qǐng)求的方法,結(jié)合實(shí)例形式分析了$http.jsonp發(fā)送跨站請(qǐng)求遇到的問(wèn)題與相應(yīng)的解決方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03
使用xampp將angular項(xiàng)目運(yùn)行在web服務(wù)器的教程
這篇文章主要介紹了使用xampp將angular項(xiàng)目運(yùn)行在web服務(wù)器,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
詳解angular臟檢查原理及偽代碼實(shí)現(xiàn)
這篇文章主要介紹了詳解angular臟檢查原理及偽代碼實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-06-06
AngularJS ng-repeat指令及Ajax的應(yīng)用實(shí)例分析
這篇文章主要介紹了AngularJS ng-repeat指令及Ajax的應(yīng)用,結(jié)合實(shí)例形式分析了ng-repeat指令的功能及ajax請(qǐng)求交互相關(guān)操作技巧,需要的朋友可以參考下2017-07-07
Angular.JS利用ng-disabled屬性和ng-model實(shí)現(xiàn)禁用button效果
這篇文章主要介紹了Angular.JS利用ng-disabled屬性和ng-model實(shí)現(xiàn)禁用button效果的相關(guān)資料,文中給出了詳細(xì)的示例代碼,相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-04-04
AngularJS實(shí)時(shí)獲取并顯示密碼的方法
這篇文章主要介紹了AngularJS實(shí)時(shí)獲取并顯示密碼的方法,涉及AngularJS數(shù)據(jù)綁定及顯示相關(guān)操作技巧,需要的朋友可以參考下2018-02-02

