У меня есть класс хранилища моделей, экземпляр которого будет экспортирован, как показано ниже:
export class CartStore {
...
}
export default new CartStore();
Позже в моем классе сетевого модуля при анализе ответа JSON от axios:
import cartStore from "./CartStore"
...
export async function addToCart(timeslotId: number, quantity: number) {
return await axios.post(sprintf(Constants.ENDPOINT_ADD_TO_CART, {
"timeslot_id": timeslotId
}), { "quantity": quantity }, getConfig())
.then(res => {
let data = (res as AxiosResponse).data;
if (data != null) {
// **compilation error** below saying that "cannot assign to 'cartStore' because it is not a variable"
cartStore = Deserialize(data, CartStore); // <--
...
} else {
console.warn("[NetworkManager]", `null response when addToCart with timeslot id: ${timeslotId}`);
}
})
.catch(defaultErrorHandler);
}
Я использую библиотеку cerialize
для десериализации моего CartStore
через Deserialize
.
Является ли экземпляр класса экспортируемым readonly
по умолчанию? Как исправить вышеуказанную ошибку?
ОБНОВЛЕНИЕ
Связанный ответ: https://stackoverflow.com/a/32558929/510577