有个问题。所以我正在制作一个使用 github api 的小应用程序(使用 mobx-state-tree 和 mobx)。我对两者都是全新的。
我有一个问题:你看到 selectedRepo 了吗?如果我为它设置一个 id,我可以访问 selectedRepo。但是...如果我在设置 id 之前尝试访问 selectedRepo,应用程序将中断。我试过用 types.optional、types.maybe 来包装它,但无论如何它都行不通。
有任何想法吗?
const defaultState = {
count: 10,
githubToken: "",
selectedRepo: ""
};
const Issue = types.model({
id: types.identifier(types.number),
title: types.string,
body: types.string
});
const Repo = types.model({
id: types.identifier(types.number),
name: types.optional(types.string, ""),
owner: types.optional(
types.model({
login: ""
}),
{}
)
});
const AppStore = types
.model({
state: "done",
githubToken: "",
issues: types.optional(types.array(Issue), []),
repos: types.optional(types.array(Repo), []),
selectedRepo: types.reference(Repo)
})