What is @angular/language-service?
The @angular/language-service package provides a way to get completions, errors, hints, and navigation inside Angular templates. It works with both external and inline templates and is used primarily in integrated development environments (IDEs) and text editors to enhance the development experience with Angular applications.
What are @angular/language-service's main functionalities?
Autocompletion
Provides autocompletion suggestions for Angular template syntax, including bindings, directives, components, and template variables.
No specific code sample can be provided as this functionality is integrated into IDEs and leverages the language service API to provide autocompletion suggestions.
Error Checking
Highlights errors in Angular templates, such as type errors, missing directives, and incorrect bindings, helping developers to identify and fix issues more quickly.
No specific code sample can be provided as this functionality is integrated into IDEs and leverages the language service API to highlight errors in Angular templates.
Navigation and Refactoring
Enables features like 'Go to definition' for components, directives, and template variables, and supports refactoring operations such as renaming symbols.
No specific code sample can be provided as this functionality is integrated into IDEs and leverages the language service API to enable features like go to definition and refactoring.
Other packages similar to @angular/language-service
typescript
While not specifically for Angular, TypeScript is often used alongside Angular for type checking and editor integrations. TypeScript provides language services that offer similar features (like autocompletion and error checking) but for TypeScript code rather than Angular templates.
vetur
Vetur is a Vue tooling for VSCode, offering features similar to @angular/language-service but for Vue.js applications. It provides syntax highlighting, snippets, Emmet, linting/error checking, formatting, auto completion, debugging, and more for Vue components.
eslint-plugin-angular
This package is an ESLint plugin that contains a set of rules for static code analysis of Angular applications. While it doesn't offer real-time error checking or autocompletion within templates, it provides a similar goal of improving code quality and catching errors.
17.2.0 (2024-02-14)
common
| Commit | Type | Description |
| -- | -- | -- |
| 03c3b3eb79 | feat | add Netlify image loader (#54311) |
| f5c520b836 | feat | add placeholder to NgOptimizedImage (#53783) |
compiler
| Commit | Type | Description |
| -- | -- | -- |
| 47e6e84101 | feat | Add a TSConfig option useTemplatePipeline
(#54057) |
| 66e940aebf | feat | scope selectors in @starting-style (#53943) |
| 7b4d275f49 | fix | Fix the template pipeline option (#54148) |
compiler-cli
| Commit | Type | Description |
| -- | -- | -- |
| 7e861c640e | feat | generate extra imports for component local dependencies in local mode (#53543) |
| 3263df23f2 | feat | generate global imports in local compilation mode (#53543) |
| b774e22d8e | feat | make it configurable to generate alias reexports (#53937) |
| 3e1384048e | feat | support host directives for local compilation mode (#53877) |
| a592904c69 | fix | allow custom/duplicate decorators for @Injectable
classes in local compilation mode (#54139) |
| 4b1d948b36 | fix | consider the case of duplicate Angular decorators in local compilation diagnostics (#54139) |
| 96bcf4fb12 | fix | forbid custom/duplicate decorator when option forbidOrphanComponents
is set (#54139) |
| 64fa5715c6 | fix | generating extra imports in local compilation mode when cycle is introduced (#53543) |
| 6c8b09468a | fix | highlight the unresolved element in the @Component.styles array for the error LOCAL_COMPILATION_UNRESOLVED_CONST (#54230) |
| 0970129e20 | fix | show proper error for custom decorators in local compilation mode (#53983) |
| f39cb06418 | fix | show specific error for unresolved @Directive.exportAs in local compilation mode (#54230) |
| f3851b5945 | fix | show specific error for unresolved @HostBinding's argument in local compilation mode (#54230) |
| 39ddd884e8 | fix | show specific error for unresolved @HostListener's event name in local compilation mode (#54230) |
| 5d633240fd | fix | show the correct message for the error LOCAL_COMPILATION_UNRESOLVED_CONST when an unresolved symbol used for @Component.styles (#54230) |
| 58b8a232d6 | fix | support jumping to definitions of signal-based inputs (#54053) |
core
| Commit | Type | Description |
| -- | -- | -- |
| 702ab28b4c | feat | add support for model inputs (#54252) |
| e95ef2cbc6 | feat | expose queries as signals (#54283) |
| 656bc282e3 | fix | add toString implementation to signals (#54002) |
| 62b87b4551 | fix | do not crash for signal query that does not have any matches (#54353) |
| 4b96f370ee | fix | expose model signal subcribe for type checking purposes (#54357) |
| 744cb1e561 | fix | return the same children query results if there are no changes (#54392) |
| 6d00115bf4 | fix | show placeholder block on the server with immediate trigger (#54394) |
http
| Commit | Type | Description |
| -- | -- | -- |
| 1c536250b6 | fix | Use string body to generate transfer cache key. (#54379) |
<!-- CHANGELOG SPLIT MARKER -->
<a name="17.1.3"></a>