首頁 web前端 js教程 Angular CLI作業藍本解析程式碼

Angular CLI作業藍本解析程式碼

May 08, 2018 pm 06:04 PM
angular 程式碼 解析

這次帶給大家Angular CLI操作藍本解析程式碼,Angular CLI操作藍本解析程式碼的注意事項有哪些,以下就是實戰案例,一起來看一下。

ng generate <藍色真名> 指令.

#此指令的格式是ng generate <藍色本名> <參數>.

也可以使用--dry-run參數來列出要產生的檔案, 而不是真的產生.

#例如:

ng generate component person, 就會產生一個person .component.ts.

ng generate service sales-data 就會產生一個sales-data.service.ts.

ng generate class user-model 就會產生一個user-model.ts裡面是UserModel類別.

Components.

ng generate xxx xxx的指令還是有點長, 這裡angular cli內建了指令的別名, 例如:

ng generate component person 這個指令,

裡面的generate 可以用字母g 來代替,

裡面的component 可以用字母c 來取代.

#所以這兩個指令是相等的:

ng generate component person
ng g c person
登入後複製

可以到這裡查看component相關的命令和別名:

https://github.com/angular/angular-cli/wiki/ generate-component

可能常用的指令參數有:

  1. #--flat  表示是否不需要建立資料夾

  2. --inline-template (-it) 模板是否應該放在ts檔案裡

  3. --inline-style (-is) 樣式是否應該放在ts檔案裡.

  4. --spec 是否需要建立spec檔(測試檔)

  5. #--view-encapsulation (-ve)  View Encapsulation策略(簡單理解為樣式文件的作用範圍策略).

  6. --change-detection (-cd) 變化檢查策略.

  7. --prefix 設定這個component的前綴

  8. --dry-run (-d), 印出出生成的檔案清單, 而不直接產生.

看下面兩對作用相同的命令, 還是使用別名方便:

ng generate component person
ng generate component person --inline-template --inline-style
ng g c person
ng g c person -it -is
登入後複製

下面來試試這些命令:

建立項目: ng new my-app 等npm install結束後再進行操作.

建立好專案後, 進入該目錄, 執行指令:

ng g c person -d
登入後複製

#該指令將會產生上述4個檔案, 並更新app.module.ts.

下面把-d參數去掉, 產生檔案:

可以看到檔案產生在專案裡了. 並且更新了app.module.ts, 在裡面做了component的宣告.

再試試看產生另外一個component, 使用一些參數View Encapsulation和Change Detection Strategy:

ng g c student -ve Emulated -cd OnPush
登入後複製

可以看到參數起作用了.

透過原始碼管理頁, 可以看到這兩個指令對app. module進行了哪些更新:

分別對生成的兩個component進行了宣告.

然後我commit一下..

Directive.

ng g d filter-box -d
登入後複製

這是檔案報告, 下面真正的生成:

ng g d filter-box
登入後複製

透過vscode的原始碼管理, 可以看到變化:

directive生成了两个文件和component一样, 也在app.module进行了声明.

看一下目录结构:

生成的directive的结构是没有目录, 也就是flat的.

如果不想生成flat样式的, 想让其拥有自己的文件夹, 那么就是用--flat参数:

ng g d filter-box2 --flat false
登入後複製

这样就有自己的文件夹了.

commit一下.

Service.

ng g s order-data -d
登入後複製

可以看到 这个命令会生成flat结构的service.

然后把-d去掉, 真实生成文件:

ng g s order-data
登入後複製

可以从源码管理看到, 只生成了两个文件, 并没有在app.module里面注册:

当然可以在这里写代码把刚才生成的service注册进去.

但是正确的做法是使用 -m 参数来指定需要注册的module:

ng g s order-data2 -m app
登入後複製

这次生成的order-data2 service就会在app.module.ts里面进行注册了.

然后再commit一下.

Model/Interface/Enum/Pipe.

model:

ng g cl models/user
登入後複製

这个命令会创建models文件夹, 然后在里面创建user这个model:

interface:

ng g i models/animal
登入後複製

enum:

ng g e models/gender
登入後複製

commit一下.

Pipe.

ng g p camel-case
登入後複製

除了生成两个文件之外, 这个命令默认也会更新app.module.

Module.

ng g m login
登入後複製

可以看到module默认是自带文件夹的.

然后我试试添加一个component, 目的是要在login module进行声明:

可以看到我要创建的welcome component默认是在app.module里面进行声明的, 这时候如果想要在login module进行声明, 就要使用 -m 参数:

去掉-d执行生成命令后:

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

Angular CLI進行單元與E2E測試步驟詳解

滑鼠放在文字上彈出懸浮層

#

以上是Angular CLI作業藍本解析程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

藍色畫面代碼0x0000001怎麼辦 藍色畫面代碼0x0000001怎麼辦 Feb 23, 2024 am 08:09 AM

藍屏代碼0x0000001怎麼辦藍屏錯誤是電腦系統或硬體出現問題時的一種警告機制,代碼0x0000001通常表示出現了硬體或驅動程式故障。當使用者在使用電腦時突然遇到藍色畫面錯誤,可能會感到驚慌失措。幸運的是,大多數藍色畫面錯誤都可以透過一些簡單的步驟來排除和處理。本文將為讀者介紹一些解決藍屏錯誤代碼0x0000001的方法。首先,當遇到藍色畫面錯誤時,我們可以嘗試重

如何在Ubuntu 24.04上安裝Angular 如何在Ubuntu 24.04上安裝Angular Mar 23, 2024 pm 12:20 PM

Angular.js是一種可自由存取的JavaScript平台,用於建立動態應用程式。它允許您透過擴展HTML的語法作為模板語言,以快速、清晰地表示應用程式的各個方面。 Angular.js提供了一系列工具,可協助您編寫、更新和測試程式碼。此外,它還提供了許多功能,如路由和表單管理。本指南將討論在Ubuntu24上安裝Angular的方法。首先,您需要安裝Node.js。 Node.js是一個基於ChromeV8引擎的JavaScript運行環境,可讓您在伺服器端執行JavaScript程式碼。要在Ub

Oracle錯誤3114詳解:如何快速解決 Oracle錯誤3114詳解:如何快速解決 Mar 08, 2024 pm 02:42 PM

Oracle錯誤3114詳解:如何快速解決,需要具體程式碼範例在Oracle資料庫開發與管理過程中,我們常常會遇到各種各樣的錯誤,其中錯誤3114是比較常見的一個問題。錯誤3114通常表示資料庫連線出現問題,可能是網路故障、資料庫服務停止、或連接字串設定不正確等原因導致的。本文將詳細解釋錯誤3114的產生原因,以及如何快速解決這個問題,並附上具體的程式碼

GE通用遠端程式碼可在任何裝置上編程 GE通用遠端程式碼可在任何裝置上編程 Mar 02, 2024 pm 01:58 PM

如果您需要遠端編程任何設備,這篇文章會為您帶來幫助。我們將分享編程任何設備的頂級GE通用遠端代碼。通用電氣的遙控器是什麼? GEUniversalRemote是一款遙控器,可用於控制多個設備,如智慧電視、LG、Vizio、索尼、藍光、DVD、DVR、Roku、AppleTV、串流媒體播放器等。 GEUniversal遙控器有各種型號,具有不同的功能和功能。 GEUniversalRemote最多可以控制四台設備。頂級通用遙控器代碼,可在任何裝置上編程GE遙控器配備一組代碼,使其能夠與不同設備配合。您可

如何使用Copilot產生程式碼 如何使用Copilot產生程式碼 Mar 23, 2024 am 10:41 AM

身為一名程式設計師,對於能夠簡化程式設計體驗的工具,我感到非常興奮。借助人工智慧工具的幫助,我們可以產生演示程式碼,並根據需求進行必要的修改。在VisualStudioCode中新引入的Copilot工具讓我們能夠創建具有自然語言聊天互動的AI生成程式碼。透過解釋功能,我們可以更好地理解現有程式碼的含義。如何使用Copilot產生程式碼?要開始,我們首先需要取得最新的PowerPlatformTools擴充。要實現這一點,你需要進入擴充頁面,搜尋“PowerPlatformTool”,然後點擊Install按鈕

解析Wormhole NTT:適用於任何Token的開放框架 解析Wormhole NTT:適用於任何Token的開放框架 Mar 05, 2024 pm 12:46 PM

Wormhole在區塊鏈互通性方面處於領先地位,專注於創建有彈性、面向未來的去中心化系統,優先考慮所有權、控制權和無需許可的創新。這個願景的基礎是對技術專業知識、道德原則和社群一致性的承諾,旨在以簡單、清晰和廣泛的多鏈解決方案套件重新定義互通性格局。隨著零知識證明、擴容方案和功能豐富的Token標準的興起,區塊鏈變得更加強大,而互通性也變得越來越重要。在這個不斷創新的應用程式環境中,新穎的治理系統和實用功能為整個網路的資產帶來了前所未有的機會。協議建構者現在正在努力思考如何在這個新興的多鏈

Angular元件及其顯示屬性:了解非block預設值 Angular元件及其顯示屬性:了解非block預設值 Mar 15, 2024 pm 04:51 PM

Angular框架中元件的預設顯示行為不是區塊級元素。這種設計選擇促進了元件樣式的封裝,並鼓勵開發人員有意識地定義每個元件的顯示方式。透過明確設定CSS屬性 display,Angular組件的顯示可以完全控制,從而實現所需的佈局和響應能力。

PHP 中點的意思和用法解析 PHP 中點的意思和用法解析 Mar 27, 2024 pm 08:57 PM

【PHP中點的意義和用法解析】在PHP中,中點(.)是常用的運算符,用來連接兩個字串或物件的屬性或方法。在本文中,我們將深入探討PHP中點的意義和用法,並透過具體的程式碼範例加以說明。 1.連接字串中點運算子.在PHP中最常見的用法是連接兩個字串。透過將.放置在兩個字串之間,可以將它們拼接在一起,形成一個新的字串。 $string1=&qu

See all articles