mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
The purpose of the changes is to clean all markdown to match a single pedantic style.
* To ensure all changes in style are properly separated.
* To ensure all styled content aligns to nearest 4-character-tab.
* To ensure all code blocks use the Angular `<code-example>` or `<code-tab>` elements.
* To ensure all markdown exists outside of html tags.
* To ensure all images use the Angular style for `<img>` elements.
* To ensure that all smart punctuation is replaced or removed.
```text
’, ’, “, ”, –, —, …
```
* To ensure all content does not conflict with the following reserved characters.
```text
@, $, *, &, #, |, <, >,
```
* To ensure all content displays using html entities.
The following changes were made to files in the following directory.
```text
aio/content
```
The target files were markdown files.
The list of excluded files:
```text
.browserslistrc, .css, .conf, .editorconfig, .gitignore, .html, .js, .json, .sh, .svg, .ts, .txt, .xlf,
```
PR Close #45325
39 lines
1.8 KiB
Markdown
39 lines
1.8 KiB
Markdown
# Strict mode
|
|
|
|
Angular CLI creates all new workspaces and projects with **strict mode** enabled.
|
|
|
|
Strict mode improves maintainability and helps you catch bugs ahead of time.
|
|
Additionally, strict mode applications are easier to statically analyze and can help the `ng update` command refactor code more safely and precisely when you are updating to future versions of Angular.
|
|
|
|
Specifically, strict mode affects newly generated applications in the following way:
|
|
|
|
* Enables [`strict` mode in TypeScript](https://www.typescriptlang.org/tsconfig#strict), as well as other strictness flags recommended by the TypeScript team.
|
|
Specifically, `forceConsistentCasingInFileNames`, `noImplicitReturns`, and `noFallthroughCasesInSwitch`.
|
|
* Turns on strict Angular compiler flags [`strictTemplates`](guide/angular-compiler-options#stricttemplates), [`strictInjectionParameters`](guide/angular-compiler-options#strictinjectionparameters), and [`strictInputAccessModifiers`](guide/template-typecheck#troubleshooting-template-errors).
|
|
* Reduces the [bundle size budgets](guide/build#configuring-size-budgets) for the `initial` and `anyComponentStyle` budget types by 75% compared to the previous defaults.
|
|
|
|
You can apply these settings at the workspace and project level.
|
|
|
|
Using the basic `ng new` command to create a new workspace and application automatically uses strict mode, as in the following command:
|
|
|
|
<code-example format="shell" language="shell">
|
|
|
|
ng new [project-name]
|
|
|
|
</code-example>
|
|
|
|
To create a new application in the strict mode within an existing non-strict workspace, run the following command:
|
|
|
|
<code-example format="shell" language="shell">
|
|
|
|
ng generate application [project-name] --strict
|
|
|
|
</code-example>
|
|
|
|
<!-- links -->
|
|
|
|
<!-- external links -->
|
|
|
|
<!-- end links -->
|
|
|
|
@reviewed 2022-02-28
|