通过 REST 将表单数据加载到 vue-form-generator

Posted

技术标签:

【中文标题】通过 REST 将表单数据加载到 vue-form-generator【英文标题】:Load form data via REST into vue-form-generator 【发布时间】:2017-05-12 21:42:32 【问题描述】:

我正在构建一个表单,它需要通过加载表单时需要发出的 JSON 请求动态获取数据。我看不到加载这些数据的方法。有谁可以帮忙吗?

JSON 调用是通过 vue-resource 完成的,表单是通过 vue-form-generator 生成的。

export default Vue.extend(
  template,

  data() 
    return 
      model: 
        id: 1,
        password: 'J0hnD03!x4',
        skills: ['javascript', 'VueJS'],
        email: 'john.doe@gmail.com',
        status: true
      ,

      schema: 
        fields: [
          
            type: 'input',
            inputType: 'text',
            label: 'Website',
            model: 'name',
            maxlength: 50,
            required: true,
            placeholder: companyList
          ,
        ]
      ,

      formOptions: 
        validateAfterLoad: true,
        validateAfterChanged: true
      ,
      companies: []
    ;
  ,

  created()
    this.fetchCompanyData();
  ,

  methods: 
    fetchCompanyData()
      this.$http.get('http://echo.jsontest.com/key/value/load/dynamicly').then((response) => 
        console.log(response.data.company);
        let companyList = response.data.company; // Use this var above
      , (response) => 
        console.log(response);
      );
    
  

); 

【问题讨论】:

【参考方案1】:

您可以将 this.schema.fields.placeholder 分配给 API 返回的值,如下所示:

  methods: 
    fetchCompanyData()
      this.$http.get('http://echo.jsontest.com/key/value/load/dynamicly').then((response) => 
        console.log(response.data.company);
        this.schema.fields.placeholder = response.data.company
      , (response) => 
        console.log(response);
      );
    
  

【讨论】:

@MapDev 你在某处设置this.model.company吗? 嘿确实找到了你的解决方案我也在寻找类似的东西。 嘿,你找到你的解决方案了吗,请帮帮我。 @DenisBhojvani 您面临什么问题?

以上是关于通过 REST 将表单数据加载到 vue-form-generator的主要内容,如果未能解决你的问题,请参考以下文章