请求后更新初始值

Update initial value after a request

我在收到请求后更新了我的模型的初始值,但它没有更新我的模型的初始值。如果我使用按钮调用 vm.options.updateInitialValue(); 它会起作用。这是一个已知的错误?

jsonService.getJSON().then(function(response){
              vm.model = response.data[0];
              vm.options.updateInitialValue();
        //console.log(vm.options.updateInitialValue); 
      });

示例可在此处找到:https://jsbin.com/doyitaf/4/edit?js,console,output

点击重置按钮,它会将字段重置为空,而不是通过工厂检索的名称。

最好的解决办法是等到模型到达后再编译表单。一个好的方法是在 this

这样的形式上使用 ng-if="vm.model"
<form ng-submit="vm.onSubmit()" name="vm.form" novalidate ng-if="vm.model">
  <formly-form model="vm.model" fields="vm.fields" options="vm.options">
    <button type="submit" class="btn btn-primary submit-button" ng-disabled="vm.form.$invalid">Submit</button>
    <button type="button" class="btn btn-default" ng-click="vm.options.resetModel()">Reset</button>
  </formly-form>
</form>
<div  ng-if="!vm.model">
  Loading...
</div>

祝你好运。