自动套用:我可以在架构中指定选项帮助程序吗?



有没有办法在架构中指定选项帮助程序?我试过了:

图式

{
  favoriteColor: {
    type: String,
    autoform: {
      options: "colorOptions"
    }
  }
}

但它似乎不起作用。

以下技术可以很好地在窗体中显示带有选项的选择:

图式

{
  favoriteColor: {
    type: String
  }
}

助手

Template.myFormTemplate.helpers({
  colorOptions: function () {
    return Colors.find().map(function (c) {
      return {label: c.name, value: c._id};
    });
  }
});

模板

{{> afQuickField name="favoriteColor" options=colorOptions}}

在我的实际模式中,我有一个对象数组,在每个对象中,我需要从不同的集合中选择一个项目。当您使用 afArrayField 时,您不能再像我在上面的模板中那样在模板中设置选项(因为它是一个对象数组,并且对象中的一个元素将引用帮助程序)。

定义方案时,我是否只能选择查询数据库?我想这会让它成为非反应性的,对吧?

{
  favoriteColor: {
    type: String,
    autoform: {
      options: function () {
    return Colors.find().map(function (c) {
      return {label: c.name, value: c._id};
    });
  }
    }
  }
}

帮助程序函数直接插入架构将起作用。我正在做类似的事情,它是被动的。

最新更新