Collections VueJS-如何制作模型和集合?

Collections VueJS-如何制作模型和集合?,collections,model,vue.js,Collections,Model,Vue.js,我正在尝试学习VueJS,我发现很难理解如何制作模型和集合 例如,我希望有一个员工集合(或列表),每个员工都是一个模型 但我不知道如何在VueJS中实现这一点 非常感谢Vue最初创建的目的是以反应式方式将数据绑定到模板,因此,没有常规MVC中的“控制器”或“模型”概念 Vue只需要简单的javascript对象作为数据,所以如果您的一些数据需要映射到模型,那么它与Vue无关,而是。。。Javascript 下面是一个实施示例(在ES6中): 就这样 如您所见,Vue与我创建的模型类无关,我只是将

我正在尝试学习VueJS,我发现很难理解如何制作模型和集合

例如,我希望有一个员工集合(或列表),每个员工都是一个模型

但我不知道如何在VueJS中实现这一点


非常感谢

Vue最初创建的目的是以反应式方式将数据绑定到模板,因此,没有常规MVC中的“控制器”或“模型”概念

Vue只需要简单的javascript对象作为数据,所以如果您的一些数据需要映射到模型,那么它与Vue无关,而是。。。Javascript

下面是一个实施示例(在ES6中):

就这样

如您所见,Vue与我创建的模型类无关,我只是将ajax数据映射到一个自定义类,然后将结果映射到Vue实例


就这么简单。

对象数组?对象数组是我理解的一部分,但我真正想要的是如何制作员工模型。我发现很难找到一个例子,其中有一个以代码形式展示的模型,如名称、年龄等。我发现的大多数例子都是从JSON/XML提要导入数据,而我想为每个员工实例提供一个固定的变量列表,我不确定我是否理解。创建一个对象并向其添加所需的属性。你可以用很多种方法来实现。你可以使用工厂函数。或者一个班级。或者只是内联。我想知道它是什么样子的。在主干网中,您可以创建如下模型:
var MyModel=backbone.model.extend({})
,但我不知道VueJSVue中的等价物使用普通javascript对象作为数据。它不需要任何基值。如果您想从现有的Employee对象模板创建Employee对象,请使用我上面提到的任何方法,或
object.assign({},EmployeeTemplate)
。上面有一个输入错误:它应该是“构造函数”而不是“构造”:-)在我看到它之前,花费的时间比我愿意承认的要多
class UserModel {
  constructor(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)
      })
  }
})