Skip to main content

AngularJS 6 - 初探 (一)

最近公司NAS專案計畫要將原本使用的AngularJS從1.x升級至目前最新的 6.x版本,這邊就來介紹下新版本的AngularJS有什麼新的特性吧。
新版中最有感的改變莫過於JavaScript的寫法變成了TypeScript,TypeScript是微軟開源維護的語言,且為嚴謹的撰寫方式並提供static typing,專案架構也由原本的MVC改為 Service/Controller,這樣的轉變可以讓我們更專注在各別組件的開發上以此可增加程式重用性和可維護性,接下來我們就寫個簡單的練習來介紹AngularJS吧。
在開始前我們需要了解AngularJS提供的CLI工具,CLI工具可以幫助我們管理專案,接下來利用npm來幫我們安裝CLI工具,請開啟命令提識字元輸入指令 :
npm install -g @angular/cli
※ 若發現 npm 指令不存在,請先安裝node.js 最新版本並重新開啟所有命令提示字元後再次嘗試。
安裝完成後我們就可以來建立我們第一個AngularJS 6專案了,輸入下列指令 :
ng new first-app
CLI會幫我們建立一資料夾名為first-app,並幫我們準備好專案需要的內容,接下來我們進到first-app資料夾中,CLI幫我們建立了幾個資料夾e2e、node_modeules、src,我們專案程式皆在src資料夾中,現在我們可以使用指令來啟動專案看看有什麼結果(Angular 6 專案在publish 前是無法直接使用的),輸入下列指令 :
ng serve –open
稍待一會後會自動開啟瀏覽器並且看到AngularJS的範例頁面,接下來我們回到專案中,修改下列路徑的檔案 src/app/app.component.ts ,並將內容改為下圖後存檔:
當我們按下存檔後,頁面將會自動刷新並將標題更換為我們剛剛修改的值,
接下來我們就來建立一個Component看看吧,Component功能為顯示現在時間,輸入下列指令:
ng generate component clock
完成後在 src/app 資料夾中會出現一個clock資料夾,CLI將自動將Component載入到我們的專案並將所需的檔案一併產生,這邊我們來介紹一下Component中的檔案用途 :
檔名用途
clock.component.css此Component專屬的CSS檔案,在專案發布時會自動產生Id和Component綁定,不用擔心相同的class名稱影響到其他的 Component或是全站的樣式。
clock.component.html此Component的html樣板文件。
clock.component.spec.tsAngularJS載入Component的規格文件,一般不會需要修改此文件。
clock.component.ts此Component的JS撰寫的地方
接下來依照下列步驟來修改clock Component的內容 :
1.修改 component.html內容如下圖 :
2.修改component.ts的內容如下圖 :
3.修改component.css 為下圖 :
4.修改component.html 為下圖 :
完成上述修改後我們回到瀏覽器看我們修改後的內容,會得到下圖的結果 :
Clock Component成功的運行,並且會持續更新時間。

這次我們跳過了Angular 2-5的版本一口氣更新為最新的版本,JS寫法也變為TypeScript,這對我們來說是一個新的挑戰,相較於傳統使用Jquery或是原生JS來撰寫的專案,不只提高了開發的門檻和需要學習的時間,但是當痛苦的拓荒時期過去,我們將會擁有非常豐富的組件庫,這些組件的重用將加快開發速度和維護上的方便,而且強型別的開發方式讓我們不用再去思考function回傳的類型為何,也省去了很多過去不確定型別而寫的判斷,雖然開發上增加了不少難度但整體上新版本的導入將對我們的專案帶來正面的影響。

參考資料 :
https://angular.io/guide/quickstart

Comments

Popular posts from this blog

Visual Studio DeBug小技巧

最近在寫簡訊系統時,在Google找到了一些在 Visual Studio 內實用的DeBug小技巧,DeBug對於程式開發是很重要的一環,往往需要花費大量的時間去測試、找問題,拜現在好用的開發工具Visual Studio 2017給了許多DeBug的好方法讓我們使用,讓我們節省大量的時間在DeBug,將更多的時間花在開發上,而現在就來一一的介紹。 點擊設置下一個執行點 許多人可能知道你可以在左側按住箭頭並上下拖動移動它。但你可能不知道的是,從Visual Studio 2017 15,3 preview版本後開始,有一種更簡單的方法來設置下一個執行點。 將鼠標停在要移動箭頭的代碼行上。 並按下前方箭頭鍵就會繼續執行你所選到的該行程式上。 圖 1 點擊設置下一個執行點 指定值中斷 你是否在DeBug時遇到過一種情況,在一個中斷點處需要檢查變數的值或屬性,以及到達下一個中斷點時屬性是否已更改。你可以在class的setter上設置中斷點,但這會變的在class的每個實作中中斷!如果你只想知道一個有問題的點該怎麼辦? 在中斷點上按右鍵→條件 圖 2 條件 設定指定的條件 圖 3 設定指定的條件 重新附加到處理序 Visual Stuido 2017中新增的一個功能,許多人還沒有發現。當你正在處理需要使用“附加到處理序”的項目時,它非常有用。 點選上方工具欄偵錯→附加到處理序(Ctrl + Alt + P),選擇要附加的處理序,然後按下“附加”。 圖 4 附加至處理序 停止偵錯後要再繼續附加,請轉到工具欄上偵錯→重新附加至處理序(Shift + Alt + P)。 顯示執行緒 要DeBug多執行緒的程式是比較困難的,但是當妳可以在編輯器中看到當前每個執行序的執行行數時,它會變得對容易些。 在Debugger工具欄中選擇”在原始程式檔中顯示執行序”。 符號就會出現在每行程式碼左側的中斷點設定區域,其中至少會有一個執行序是正在被停止的。 將滑鼠鼠標停留在執行序符號上可以查看當前在該行程式碼上停止的所有執行序的執行緒ID與名稱 。 右鍵點及該執行序可以查看可以執行的操作,例如凍結或切換當前執行的執行序等等 圖 5顯示執行緒 ...

用小小 簡訊 拉近彼此距離

用小小 簡訊 拉近彼此距離! 身為行銷企劃的你是不是有過類似經驗,明明花了很多時間和精力經營你與客戶之間的關係,但與客戶之間總是有一堵高牆擋在中間,不管拿什麼工具千敲萬槌的,那面牆不動就是不動,就因為久久不能打破那面高牆而心灰一冷呢?別擔心,也許不是你使用的方法有錯,而是你缺那個「關鍵契機」,就讓我們一起加持你手的鐵槌,讓它變成強而有力的神之鐵槌,打破眼前一切行銷障礙,拉近你與客戶之間的關係! 現在,就來來好好介紹這「關鍵契機」吧! 首先,先來說說我們常見的「文字簡訊」,文字簡訊我們又可稱SMS,一般我們常收到的驗證簡訊、商品出貨通知都算是文字簡訊的一種,在內容的字數上還可以再細分為長簡訊與一般簡訊,一般簡訊字數在70字以內,而長簡訊至多可以使用335個字,但既然是希望客戶能在最短時間內閱讀到重點,通常設計到100個字就很足夠了,就如下圖所示,其餘想要說明的可以透過網頁或社群平台貼文的方式呈現。 好比以下例子,假如你是護膚中心的業者,想必有很多護膚課程想推薦給你的客戶,但沒太多時間一通一通電話打,又怕寄送Mail被擋在垃圾桶裡面,這時你可以發送 簡訊 ,針對不同的客戶寄送不同的課程訊息,如下圖所示,加上客戶名稱和課程介紹,一眼就能讓客戶看到重點,馬上打電話來跟你預約護膚課程。 怕 簡訊 看起來單調無味,你可以加點Emoji表情符號來增添點色彩,你看下面範例圖左邊是原本的 簡訊 ,而右邊有加上Emoji表情符號的 簡訊 ,明明內容相同,但看起來的感覺就是有小圖的比較貼近人心。 再來說說「圖文簡訊」,圖文簡訊又稱為MMS,除了可發送圖片外,也可發送音訊檔案,讓 簡訊 看起來更有趣,在運用上就更為廣泛了,就如下圖所示,除了可以發送商品打折的DM、也可以發送消費帳單的條碼,當然發送節日賀卡也是沒問題的。 就以一般商家來說,當你想祝福你的客戶生日快樂,你就可以先製作一張別出心裁的生日圖片,配上客戶的名字和幾段祝福文字,這樣一來是不是讓收到的客戶暖上心頭呢!如果你以為只能發送JPG格式的圖片外,那你就錯了,動態的GIF圖片當然也是可以的,就以下面兩張圖來看,左圖是發送靜態的JPG圖片 簡訊 ,右邊是動態的GIF圖片 簡訊 ,比較起來是不是帶有GIF的 簡訊 看起來是不是比較有趣!   ...

[ 簡訊行銷 ] 雙向簡訊 與 行銷運用

還在以為行銷簡訊只能做單方面的訊息傳遞而感到單調無趣嗎?那你一定是還不認識「 雙向簡訊 」。到底什麼是「 雙向簡訊 」呢?簡單來說就是”有來” “有往”、有互動功能的簡訊發送。 下面就簡單介紹一下「 雙向簡訊 」的操作流程吧! 設定活動區間 為這次的雙向活動訂下活動時間,讓你在活動截止時間內所有回覆訊息不漏接。 設定回覆訊息 針對收訊者回覆的訊息內容設定「回覆訊息」,供簡訊系統在收到回覆的訊息後作自動傳送。 設定發送名單、簡訊內容 收到簡訊後回覆「1」,立即可得到剛剛設定好的第二則「回覆訊息」 發訊方可至簡訊平台報表中查詢所有收到的回覆訊息 「 雙向簡訊 」擁有以下特色 ★ 發訊號碼專用 雙向簡訊的發訊號碼是採用「特碼」方式,在活動時間內特碼專屬不與他人共用。 ★ 收訊與訊息反饋的對象彈性 收訊對象的選擇上,由於特碼在接收反饋的對象上並沒有限制必需在原始收訊名單內,因此您可善用各種能提高活動與號碼可見度的推廣平台,並不會侷限於僅能使用簡訊方式推廣。 ★ 訊息反饋立即且方便 電信業者提供收訊者回傳的訊息,經簡訊系統接收後進行訊息內容的分析與比對,再自動回傳相對應的「回覆訊息」給收訊者。簡訊平台也會將接收到的回傳訊息內容以報表方式呈現,供發訊方作進一步的分析依據。 回到在行銷活動上的運用,「雙向簡訊」的優點在於發訊方(以下統稱「業主」)可即時的得知客戶對產品或活動的回應。透過一發一答的簡訊活動得到的反饋資料,幫助業主對目標市場需求的了解、掌握潛在客戶的意見,收集到的反饋也能再作進一步的資訊分析。因此設計出吸引收訊者目光的行銷活動內容將會是個有趣的挑戰。愈能成功引起收訊者興趣,得到的訊息反饋自然也就愈多囉! 在行銷活動的陌生開發方面,「雙向簡訊」也能運用在資料庫行銷簡訊上。業主可依自家商品屬性,以地區、競業代表號、消費類型、目標客戶收入…等條件,透過電信業者或行銷公司的資料庫進行資料探勘 (Data Mining),篩選出自家商品的潛在客戶層,作為行銷活動的發送對象。由於門號屬於個資,業主並不會實質的拿到發送名單,這時如果運用於雙向簡訊的發送,就能透過收訊者回傳的訊息反饋,間接獲得對自家商品有興趣、強而有力的TA (目標客戶,Target A...