Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

ERROR RuntimeError: NG0318: '<input>' is an invalid control host. The host must be a native form control (such as <input>', '<select>', or '<textarea>') or a custom form control component with a 'value' or 'checked' model. #64362

Copy link
Copy link
@timdeschryver

Description

@timdeschryver
Issue body actions

Which @angular/* package(s) are the source of the bug?

forms

Is this a regression?

Yes

Description

Upgrading from 21.0.0-next.5 to 21.0.0-next.6 results in runtime errors when using signal forms. Previously working forms are throwing the following error:

ERROR RuntimeError: NG0318: '<input>' is an invalid control host. The host must be a native form control (such as <input>', '<select>', or '<textarea>') or a custom form control component with a 'value' or 'checked' model.

Either the implementation or the error message contains a mistake, because input is a native form control.

The form looks as follows:

<form novalidate>
	<input [control]="customerForm.firstName" />
</form>

Please provide a link to a minimal reproduction of the bug

timdeschryver/Sandbox#53

Please provide the exception or error you saw

ERROR RuntimeError: NG0318: '<input>' is an invalid control host. The host must be a native form control (such as <input>', '<select>', or '<textarea>') or a custom form control component with a 'value' or 'checked' model.

Please provide the environment you discovered this bug in (run ng version)

Angular CLI       : 21.0.0-next.7
Angular           : 21.0.0-next.7
Node.js           : 22.16.0
Package Manager   : pnpm 10.18.1
Operating System  : win32 x64

┌───────────────────────────┬───────────────────┬───────────────────┐
│ Package                   │ Installed Version │ Requested Version │
├───────────────────────────┼───────────────────┼───────────────────┤
│ @angular/build            │ 21.0.0-next.6     │ 21.0.0-next.6     │
│ @angular/cli              │ 21.0.0-next.7     │ 21.0.0-next.7     │
│ @angular/common           │ 21.0.0-next.7     │ ^21.0.0-next.6    │
│ @angular/compiler         │ 21.0.0-next.7     │ ^21.0.0-next.6    │
│ @angular/compiler-cli     │ 21.0.0-next.7     │ 21.0.0-next.7     │
│ @angular/core             │ 21.0.0-next.7     │ ^21.0.0-next.6    │
│ @angular/forms            │ 21.0.0-next.7     │ ^21.0.0-next.6    │
│ @angular/platform-browser │ 21.0.0-next.7     │ ^21.0.0-next.6    │
│ @angular/router           │ 21.0.0-next.7     │ ^21.0.0-next.6    │
│ ng-packagr                │ 21.0.0-next.4     │ 21.0.0-next.4     │
│ rxjs                      │ 7.8.2             │ ~7.8.2            │
│ typescript                │ 5.9.3             │ 5.9.3             │

Anything else?

This also occurs when using select, or textarea elements.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions

    Morty Proxy This is a proxified and sanitized view of the page, visit original site.