angular-cn/public/docs/js/latest/api/forms/FormBuilder-class.jade

130 lines
2.6 KiB
Plaintext

p.location-badge.
exported from <a href='../forms'>angular2/forms</a>
defined in <a href="https://github.com/angular/angular/tree/2.0.0-alpha.34/modules/angular2/src/forms/form_builder.ts#L4-L126">angular2/src/forms/form_builder.ts (line 4)</a>
:markdown
Creates a form object from a user-specified configuration.
# Example
```
import {Component, View, bootstrap} from 'angular2/angular2';
import {FormBuilder, Validators, FORM_DIRECTIVES, ControlGroup} from 'angular2/forms';
@Component({
selector: 'login-comp',
viewBindings: [
FormBuilder
]
})
@View({
template: `
<form [control-group]="loginForm">
Login <input control="login">
<div control-group="passwordRetry">
Password <input type="password" control="password">
Confirm password <input type="password" control="passwordConfirmation">
</div>
</form>
`,
directives: [
FORM_DIRECTIVES
]
})
class LoginComp {
loginForm: ControlGroup;
constructor(builder: FormBuilder) {
this.loginForm = builder.group({
login: ["", Validators.required],
passwordRetry: builder.group({
password: ["", Validators.required],
passwordConfirmation: ["", Validators.required]
})
});
}
}
bootstrap(LoginComp)
```
This example creates a <a href='ControlGroup-class.html'><code>ControlGroup</code></a> that consists of a `login` <a href='Control-class.html'><code>Control</code></a>, and a
nested
<a href='ControlGroup-class.html'><code>ControlGroup</code></a> that defines a `password` and a `passwordConfirmation` <a href='Control-class.html'><code>Control</code></a>:
```
var loginForm = builder.group({
login: ["", Validators.required],
passwordRetry: builder.group({
password: ["", Validators.required],
passwordConfirmation: ["", Validators.required]
})
});
```
.l-main-section
h2 Annotations
.l-sub-section
h3.annotation Injectable
pre.prettyprint
code.
@Injectable()
.l-main-section
h2 Members
.l-sub-section
h3 group
pre.prettyprint
code.
group(controlsConfig: StringMap&lt;string, any&gt;, extra?: StringMap&lt;string, any&gt;)
:markdown
.l-sub-section
h3 control
pre.prettyprint
code.
control(value: Object, validator?: Function)
:markdown
.l-sub-section
h3 array
pre.prettyprint
code.
array(controlsConfig: List&lt;any&gt;, validator?: Function)
:markdown