Bird
Raised Fist0
Angularframework~5 mins

Creating components with CLI in Angular - Quick Revision & Summary

Choose your learning style10 modes available
Recall & Review
beginner
What command do you use to create a new Angular component using the CLI?
Use ng generate component component-name or the shortcut ng g c component-name to create a new component.
Click to reveal answer
beginner
What files are created when you generate a new Angular component with the CLI?
The CLI creates four files: .ts (TypeScript logic), .html (template), .css or .scss (styles), and .spec.ts (test file).
Click to reveal answer
intermediate
Does the CLI update your Angular module when you generate a component?
No, since Angular 17 the CLI generates standalone components by default and does not add them to the declarations array of any module.
Click to reveal answer
intermediate
How can you create a component without generating a test file using the CLI?
Add the flag --skip-tests to the generate command, like ng g c component-name --skip-tests.
Click to reveal answer
intermediate
What does the --inline-style flag do when creating a component with the CLI?
It puts the component's CSS styles directly inside the TypeScript file instead of creating a separate CSS file.
Click to reveal answer
Which command creates a new Angular component named 'header'?
Ang generate component header
Bng create component header
Cng new component header
Dng add component header
What file is NOT created by default when generating a component?
Acomponent.json
Bcomponent.html
Ccomponent.ts
Dcomponent.spec.ts
How do you prevent the CLI from creating a test file?
A--no-test
B--skip-test-file
C--skip-tests
D--no-spec
Where does the CLI add the new component automatically?
AIn the <code>imports</code> array
BNowhere (standalone by default)
CIn the <code>providers</code> array
DIn the <code>declarations</code> array
What does the --inline-template flag do?
ASkips creating a template
BCreates a separate HTML file
CCreates a CSS file inline
DCreates the template inside the TypeScript file
Explain how to create a new Angular component using the CLI and what files are generated.
Think about the command and what happens after running it.
You got /3 concepts.
    Describe how to customize component creation with CLI flags like skipping tests or using inline styles.
    Flags change what files or code structure the CLI generates.
    You got /3 concepts.

      Practice

      (1/5)
      1. What command do you use to create a new Angular component using the CLI?
      easy
      A. ng build component component-name
      B. ng create component component-name
      C. ng new component component-name
      D. ng generate component component-name

      Solution

      1. Step 1: Understand Angular CLI commands

        The Angular CLI uses ng generate to create new files and features.
      2. Step 2: Identify the correct syntax for creating components

        To create a component, the command is ng generate component followed by the component name.
      3. Final Answer:

        ng generate component component-name -> Option D
      4. Quick Check:

        Use ng generate component to create components [OK]
      Hint: Remember: 'generate' creates, 'create' is incorrect here [OK]
      Common Mistakes:
      • Using 'ng create' instead of 'ng generate'
      • Confusing 'ng new' which creates a new project
      • Using 'ng build' which compiles the app
      2. Which of the following is the correct syntax to generate a component named header using Angular CLI?
      easy
      A. ng generate component header
      B. ng generate component-header
      C. ng generate component:header
      D. ng generate component/header

      Solution

      1. Step 1: Check the correct command format

        The Angular CLI expects the component name as a simple argument after the command.
      2. Step 2: Identify the valid component name format

        Component names should be simple words or camelCase without special characters like ':' or '/'.
      3. Final Answer:

        ng generate component header -> Option A
      4. Quick Check:

        Use space, not symbols, between command and name [OK]
      Hint: Use space after 'component' for name, no symbols [OK]
      Common Mistakes:
      • Using symbols like ':' or '/' in component name
      • Hyphenating the command instead of the name
      • Confusing command syntax with file paths
      3. What files are created when you run ng generate component footer in an Angular project?
      medium
      A. footer.component.js, footer.component.html, footer.component.css
      B. footer.ts, footer.html, footer.css, footer.spec.ts
      C. footer.component.ts, footer.component.html, footer.component.css, footer.component.spec.ts
      D. footer.component.ts, footer.html, footer.css, footer.spec.js

      Solution

      1. Step 1: Recall Angular component file structure

        Angular components generate four files: TypeScript, HTML, CSS, and a test spec file, all with the component name prefix.
      2. Step 2: Match the correct file extensions and naming

        The files have extensions .ts, .html, .css, and .spec.ts with the component name and '.component' in the filename.
      3. Final Answer:

        footer.component.ts, footer.component.html, footer.component.css, footer.component.spec.ts -> Option C
      4. Quick Check:

        Angular components create 4 files with .component and correct extensions [OK]
      Hint: Remember 4 files: .ts, .html, .css, .spec.ts [OK]
      Common Mistakes:
      • Missing the .spec.ts test file
      • Using .js instead of .ts
      • Omitting '.component' in filenames
      4. You ran ng generate component nav-bar but got an error. What is the likely cause?
      medium
      A. You must run the command inside an Angular project folder
      B. Component names cannot contain hyphens
      C. The CLI command should be ng create component nav-bar
      D. Component names must be uppercase

      Solution

      1. Step 1: Check the environment for running CLI commands

        Angular CLI commands must be run inside an Angular project folder where configuration files exist.
      2. Step 2: Verify the command syntax and naming rules

        Hyphens are allowed in component names, and the command is ng generate component, not ng create. Component names can be lowercase.
      3. Final Answer:

        You must run the command inside an Angular project folder -> Option A
      4. Quick Check:

        Run CLI commands inside Angular project folder [OK]
      Hint: Always run CLI commands inside your Angular project folder [OK]
      Common Mistakes:
      • Trying to run commands outside the project folder
      • Using 'ng create' instead of 'ng generate'
      • Thinking hyphens are invalid in names
      5. You want to create a component named userProfile inside a folder features using Angular CLI. Which command correctly does this?
      hard
      A. ng generate component features userProfile
      B. ng generate component features/userProfile
      C. ng generate component features-userProfile
      D. ng generate component userProfile/features

      Solution

      1. Step 1: Understand folder structure in CLI commands

        To create a component inside a folder, specify the folder path before the component name separated by a slash.
      2. Step 2: Identify the correct command syntax

        The correct syntax is ng generate component features/userProfile to place the component inside the 'features' folder.
      3. Final Answer:

        ng generate component features/userProfile -> Option B
      4. Quick Check:

        Use slash to specify folder path before component name [OK]
      Hint: Use folder/componentName with slash to create nested components [OK]
      Common Mistakes:
      • Swapping folder and component name order
      • Using space instead of slash for folder path
      • Hyphenating folder and component name incorrectly
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard