Ember.js 如何使用模型数据填充ember cli jstree

Ember.js 如何使用模型数据填充ember cli jstree,ember.js,ember-data,jstree,Ember.js,Ember Data,Jstree,我正在尝试使用这个插件从我的数据创建一个树。我可以根据github中提供的示例成功地创建一个树,但是当我尝试使用模型中的数据时,它似乎期望的是json数据,而不是ember模型 // models/user.js import DS from 'ember-data'; export default DS.Model.extend({ name: DS.attr('string'), children: DS.hasMany('user', {inverse: 'parent', a

我正在尝试使用这个插件从我的数据创建一个树。我可以根据github中提供的示例成功地创建一个树,但是当我尝试使用模型中的数据时,它似乎期望的是json数据,而不是ember模型

// models/user.js 
import DS from 'ember-data';

export default DS.Model.extend({
  name: DS.attr('string'),
  children: DS.hasMany('user', {inverse: 'parent', async: true}),
  parent: DS.belongsTo('user', {inverse: 'children', async: true})
});

// routes/users.js
import Ember from 'ember';

export default Ember.Route.extend({
  model() {
    return this.store.findAll('user');
  }
});

// templates/users.hbs    
<h2>Users</h2>
<div class="sample-tree">
   {{ember-jstree
      data= model
   }}
</div>
//models/user.js
从“余烬数据”导入DS;
导出默认DS.Model.extend({
名称:DS.attr('string'),
子项:DS.hasMany('user',{inverse:'parent',async:true}),
父项:DS.belongsTo('user',{inverse:'children',async:true})
});
//routes/users.js
从“余烬”导入余烬;
导出默认的Ember.Route.extend({
模型(){
返回此.store.findAll('user');
}
});
//模板/用户.hbs
使用者
{{余烬jstree
数据=模型
}}

我已经搜索了一个工作示例,但到目前为止还没有找到。

是的,它需要一个特定格式的普通旧JavaScript对象,而不是一个余烬数据模型


在Ember Twiddle中有一个开源的工作示例:

谢谢@Gaurav。因此,需要手动实现集成数据模型的功能?添加、删除和更新记录?我可以使用users.map(function(user){return user.toJSON({includeId:true});})来获取pojo,但是我会丢失数据模型。是的,但是请注意,每次模型更改时,我都会使用computed属性来重新计算树的数据。还要注意,您必须实际为每个节点和一些“父节点”指定ID节点可能甚至不存在于您的模型中。ember cli jstree只不过是原始jquery插件上的一个薄包装器,您需要在那里查找需要向jstree提供什么的文档。