reactjs - 如何将类函数移到类之外并在 React 中仍然使用 this 关键字?
问题描述
在反应中我有这样的代码
export class Foo extends React.Component {
function_name() {
this.setState({blah: 'bleh'})
}
this.function_name()
}
但我真的很想让它像这样工作
function_name() {
this.setState({blah: 'bleh'})
}
export class Foo extends React.Component {
this.function_name()
}
有什么方法可以让这种事情发挥作用吗?基本上我希望类外的函数减少缩进。问题是我得到function_name is not a function
.
解决方案
您可以在声明/导出类后分配给原型:
export class Foo extends React.Component {
this.function_name()
}
Foo.prototype.function_name = function() {
this.setState({blah: 'bleh'})
};
推荐阅读
- c# - 故事板动画没有动画
- node.js - 获取 Socket IO 服务器的状态
- asp.net-web-api - Asp.net WebAPI 令牌返回 unicode 编码
- php - 在 Godaddy 服务器中未找到“ZipArchive”类 Laravel phpword
- c - 忽略c中的“默认”函数
- python - 如何/在哪里获取股票市场指数(聚合)API 或其他访问方法
- python - 简单 python 代码中的未定义错误 KeyError: '284882215'
- c++ - 在 R 中使用过时的包的问题
- vue.js - Nuxt.js 无法从 Django Rest Framework API 检索数据
- docker - linux 或 docker 中的 MariaDB + .net 核心在高负载情况下失败。在本地 Windows 开发机器上工作