选项和值不会显示在 ember-select-guru 中

Options and value won't display in ember-select-guru

本文关键字:ember-select-guru 显示 选项      更新时间:2023-09-26

我正在尝试在我自己的组件中使用ember-select-guru。.hbs 元素如下所示。 {{ember-select-guru multiple=true value=values options=options onSelect=(action "onSelect"),我的.js看起来像这样

values: Ember.computed('user' function() {
  const values = [];
  this.get('user.listOfThings').forEach(value => {
    values.push(value.get('name'));
  });
  return values;
}),

选项数组也有类似的东西。

我的问题是value.get('name')中的字符串没有显示。它肯定是在拾取数组,因为组合框中出现了正确数量的元素,但它们只是空的div 元素。变量values最终是一个字符串数组,似乎在其他任何地方都可以正常工作。有人知道我不知道的事情吗?我在文档或源代码中找不到任何可以帮助我的东西。

我也愿意使用其他行为相同的东西。这是它在文档中应该如何显示的示例。

我刚刚找到了答案。我查看了文档页面的源代码,发现该组件似乎正在寻找具有名称字段的对象数组。幸运的是,我的事物列表已经有一个名称属性,我只需要调用.toArray((。代码如下所示:

values: Ember.computed('user', function() {
  return this.get('user.listOfThings').toArray();
}

但是,在更一般的情况下,您需要使用:

values: Ember.computed('user', function() {
  var values = [];
  this.get('user.listOfThings').forEach(value => {
    values.push({ name: value.get('attributeYouWant'), other: other });
  };
  return values;
}

这有点有用,因为字符串数组的功能并不那么强大,但它可能应该比在浏览器的开发工具中查看网页的源代码更清晰一些。