typescript - TypeScript + React Native 中的状态接口属性
问题描述
我正在将 JavaScript 中的现有代码重写为 TypeScript。但是,我是 React Native 的新手。我的问题是:
我有一个自Component
定义State
界面的自定义。State
我想通过自定义界面来解决我现在在组件本身内部遇到的错误。这是我的接口代码:
interface MeterReadingStaticState {
process: any,
selected: {
value: any,
isAccepted: boolean,
type: any,
},
isLoaded: boolean,
}
这是我的内容Component
:
export default class MeterReadingStatic extends Component<
MeterReadingStaticProps, MeterReadingStaticState> {
state: MeterReadingStaticState = {
selected: {
value: '',
isAccepted: false,
type: '',
},
process: [],
isLoaded: false
};
onAcceptPress = () => {
const updatedProcess = this._updateObj('isAccepted', true);
this.setState({ process: updatedProcess });
};
_updateObj = (prop: MeterReadingStaticProps, value: any) => {
const { process, selected } = this.state;
const target = process.filter(
item => item.name === selected.name && item.type === selected.type
)[0];
target[prop] = value;
const updatedProcess = process.map(
item =>
item.name === target.name && item.type === target.type ? target : item
);
return updatedProcess;
};
从上面的代码可以看出,我想访问状态属性的具体参数。但是,当我尝试这样做时,我遇到了一堆错误。当我尝试初始化 myState
和尝试运行时_updateObj
,我也会遇到一些错误onAcceptPress
。
在定义State
. 有什么解决方案吗?
解决方案
首先,我可以问一下你的 MeterReadingStaticState 是否在你班级的同一个文件中?
其次,你能看到你的 package.json 文件并确保你的 typescript 安装正确吗?
让我知道,因为它可能有助于解决问题
推荐阅读
- apache - 具有身份验证表单的 Apache 反向代理未将凭据传递给代理服务器
- python - 为什么需要“预测空间”?
- jquery - jQuery - 使用变量通过href值查找锚点
- angular - 通过 angular-cli 生成的 Angular 组件的自定义项目级模板
- hibernate - 没有直接连接的休眠连接查询
- c# - 当我从另一个表单调用方法时,控件不会更改颜色或文本
- google-cloud-nl - 我们可以使用 Google NLP API 比较两个不同字符串的相似性吗?
- ios - GoogleSignin - 不允许在解除分配时尝试加载视图控制器的视图,这可能会导致未定义的行为
- c++ - C++ 的不同行为与公共和私有范围的默认值
- angularjs - AngularJS 中的基本数组循环