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

时间:2016-12-28 15:18:43

标签: json rest vue.js vuejs2 vue-resource

我正在构建一个表单,需要通过加载表单时需要进行的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 个答案:

答案 0 :(得分:3)

您可以将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);
      });
    }
  }