Один из вариантов может быть:
const Worksheet = types
.model('Worksheet', {
imageFile: types.string,
animatedValue: 1,
).views(self => ({
get image() {
return require(self.imageFile);
},
get animated() {
return new Animated.Value(self.animatedValue);
},
}).volatile({
timeInterval: null || setInterval(() => {}, 1000)
})
Не все поля могут быть типами, если MST не может рассуждать о них. Вот где volatile
вступает в игру. Обратите внимание, что поля внутри volatile
не могут быть сериализованы в снимки.
Я не уверен, какое у вас было намерение с animated
, поэтому я поместил значение в качестве его собственного типа и использовал вычисляемый метод получения в views
чтобы получить то, что вы хотите. Возможно, это вызывает у вас идеи.