我正在从api检索数据并将其存储在sharedState中。当我尝试像下面一样访问此数据时,它似乎返回正确的值。 dashboard
数组中有一个name
字段。
console.log(newState.profile)
返回:
但是,当我访问dashboards
console.log(newState.profile.dashboards)
它返回
[]
用于从main.js设置状态的函数
export function getProfile(state, user) {
const newState = Object.assign({}, state);
if (user) {
db().collection("users").doc(user.uid)
.onSnapshot((doc) => {
var data = doc.data()
if (data) {
newState.profile.apps = data.apps
newState.profile.dashboards = data.dashboards
} else {
authservice.setUserAcc(user.uid)
}
});
}
return newState
}
我不确定这是JavaScript行为还是与我设置状态的方式有关。