我在TypeScript中定义了以下接口:
interface Person {
Id: number;
FirstName: string;
LastName: string;
Age: number;
}
我有一个.html
部分,其中包含HTML ng-submit="submit()"
元素上的Angular form
指令。以下是form
:
<input id="FirstName" name="FirstName" type="text" class="form-control" ng-model="FirstName" placeholder="Enter First Name" />
我想要的是对以下submit
调用中的对象参数进行以下对sumbit map表单值的调用:
$scope.submit = (person: MyApp.Models.Person) => {
//Access person values
}
问题在于,在调用person
时submit()
检查undefined
是<input>
并且未填充。
我想知道是否可以自动使用form
元素中的多个submit()
表单值并绑定到{{1中的TypeScript已知的对象参数方法?
答案可能是完全不可能,但我想知道之前我手动获取每个ng-model
值并为Person
实例提供水合作用在我的submit()
函数中。
答案 0 :(得分:1)
有可能。并且some say it is even a recommended strategy。
不要直接在表单元素(person
)上使用ng-model=FirstName
对象的成员,而是使用点符号和人物对象(ng-model=person.FirstName
)。例如,在您的范围对象上:
$scope.person: MyApp.Models.Person;
并在您的标记中(注意ng-model
上的差异):
<input id="FirstName" name="FirstName" type="text" class="form-control" ng-model="person.FirstName" placeholder="Enter First Name" />
现在,当您拨打submit
功能时,可以发送person
型号
ng-submit="submit(person)"
,您的submit
函数person
参数可以访问表单中定义的person
对象的所有成员。