typescript - React Native 功能组件 useState 丢失 Typescript 类
问题描述
我有一个功能组件,它具有特定类的对象的状态:
import React from "react";
import { ReactElement } from "react-native/node_modules/@types/react";
import { useState } from "react";
import { Text, View } from "react-native";
import MyClass from "./MyClass";
export default function FunCompWithState(): ReactElement {
const [myClass, setMyClass] = useState<MyClass>(new MyClass());
myClass.setTitle("New Title");
console.log("typeof: " + typeof myClass);
console.log("object value: " + myClass);
console.log("object variable title: " + myClass.getTitle());
console.log("object variable value: " + myClass.getValue());
return (
<View><Text>{myClass.getValue()}</Text></View>
);
}
如果有帮助,这是我的类定义:
export default class MyClass {
private title: string = "";
private value: number = 1;
// Getters/Setters...
}
当这个呈现时,我在我的日志中得到以下信息:
❌ typeof: object
❌ object value: [object Object]
✅ object variable title: New Title
✅ object variable value: 1
但我会期待这样的事情:
✅ typeof: MyClass
✅ object value: {"title":"New Title","value":1}
✅ object variable title: New Title
✅ object variable value: 1
有没有办法useState
尊重我的状态对象的类?
解决方案
推荐阅读
- django - 是否可以在 django 中使用多个自定义用户模型?
- python - 如何禁止这种蛇运动利用?- 游戏
- python - 为 LSTM 模型调用预测函数时出现有关输入形状的错误
- svelte - Svelte Sortable 拖放列表不更新
- javascript - 在 JavaScript 或 PHP 中修剪 SVG
- php - 如何正确地将 php json_encode 值传递给使用 DataTables 插件的表?
- c# - 如何将 ui 元素的宽度除以 2?
- sql - SQL - 选择当年的实际数据和未来一年的计划数据
- swiftui - 循环播放 iOS14 视频播放器
- c# - LINQ .Any 运行方法