VueJS - 如何制作模特和系列?

时间:2017-05-07 17:01:13

标签: collections model vue.js

我正在尝试学习VueJS,我发现很难理解如何制作模型和收藏品。

例如,我想拥有一个Employees的集合(或列表),每个Employee都是一个模型。

但我不知道如何在VueJS中完成此任务

非常感谢

1 个答案:

答案 0 :(得分:7)

最初创建Vue是为了以反应方式将数据绑定到模板,因此,没有"控制器"或"模型"像常规MVC那样的概念。

Vue只需要简单的javascript对象作为数据,所以如果你的某些数据需要映射到模型,那么它不是关于Vue的,而是关于...... Javascript。

以下是实施示例(在ES6中):

class UserModel {
  construct(data) {
    this.data = data
  }

  name() {
    return this.data.firstname + ' ' + this.data.lastname
  }

  // and so on, put other methods here
}

var app = new Vue({
  el: '#app',
  data: {
    user: {}
  },
  created() {
    // axios or anything else for your ajax, or a new fetch api
    axios.get('/me')
      .then(response => {
        // of course the "this" here is the Vue instance because i used an es6 arrow function
        this.user = new UserModel(response.data)
      })
  }
})

那就是它。

正如您所看到的,Vue与我创建的Model类没有关系,我只是将我的ajax数据映射到自定义类,然后将结果映射到Vue实例。

就这么简单。