我的模拟不是为每个项目生成唯一的数据,而是每个项目具有相同的字段值。
选项1:(理想方法,错误结果)
AppSync模式拥有items
的{{1}}字段,如果我自己放置[Model]
解析器,则Model
列表中的所有Model
都有相同的值。
items
导致...
选项2:(替代方法,正确的结果)
const mocks = {
ModelModelConnection: () => ({
items: () => new MockList(5),
}),
Model: () => ({
id: casual.uuid,
name: casual.title,
}),
};
我想使用选项1,但似乎无法模拟出唯一的项目。一直在挠我的头。预先感谢!
答案 0 :(得分:1)
如the docs所示,如果您想在每次触发字段的解析程序时生成一个不同的值,则模拟解析程序应该是一个函数,而不是一个值。所以代替:
Model: () => ({
id: casual.uuid,
name: casual.title,
}),
您应该这样做:
Model: () => ({
id: () => casual.uuid,
name: () => casual.title,
}),
这导致每次解析该字段时都会调用id
和name
。