我正在使用Angular Formly,如果模型是范围的值,就像字符串一样,效果很好:
{
key: 'name',
type: 'input'
}
Run Code Online (Sandbox Code Playgroud)
问题是我使用更精细的对象来处理模型,使用"controller as"语法并将名称作为用户对象的一部分:
vm.user = {name: 'john', lastname: 'doe'}
Run Code Online (Sandbox Code Playgroud)
当然,关键是:
{
key: 'user.name',
type: 'input'
}
Run Code Online (Sandbox Code Playgroud)
(通常vm以形式表示法从键中取出).
问题是Formly使用括号表示法来处理模型:
template = '<input ng-model=\"model[options.key]\">'
Run Code Online (Sandbox Code Playgroud)
处理时,吐出此输出:
<input name="bd.form_input_user.name_1" type="text" ng-model="model.user.name">
Run Code Online (Sandbox Code Playgroud)
当然,模型没有用户对象和空字段显示.
所以,我的问题是:当它是一个更复杂的对象时,如何将适当的对象传递或链接到形式模型?
提前致谢.