use*_*142 6 mobx mobx-state-tree
我正在尝试克隆引用另一个模型的模型,但我得到:Error: [mobx-state-tree] Failed to resolve reference 'H1qH2j20z' to type 'AnonymousModel' (from node: /usualCustomer)...
在克隆中。原版解决没问题。
这是我的模型:
const Job = types.model({
id: types.optional(types.identifier(types.string), shortid.generate()),
jobNumber: types.optional(types.string, ''),
description: '',
usualCustomer: types.maybe(types.reference(Customer)),
})
const Customer = types.model({
id: types.optional(types.identifier(types.string), shortid.generate()),
name: types.optional(types.string, 'New customer'),
})
Run Code Online (Sandbox Code Playgroud)
这个函数说明了问题:
editJob = job => {
console.log('Original', job)
var newClone = clone(job)
console.log('Clone', newClone)
}
Run Code Online (Sandbox Code Playgroud)
小智 0
您是否还尝试更改要克隆的节点的标识符?
我不确定它是否会起作用。但是当您克隆作业节点时,我认为新创建的作业 newJob 充当对克隆作业的引用,无论如何尝试一下:
let jobFromSnap = getSnapshot(job);
let newJob = Job.create({...jobFromSnap, id : "NEW_ID_HERE" }) ;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2413 次 |
最近记录: |