typescript - 在 TSX 中将 var 作为函数键入时出错
问题描述
我是 TS 的新手。这段代码我没有收到任何错误:
interface Props {
active: boolean
error: any // unknown
input: any // unknown
onActivate: Function
onKeyUp: Function
onSelect: Function
onUpdate: Function
readonly: boolean
selected: boolean
value: string
}
但是在这里,我收到一个错误消息:
Cannot redeclare block-scoped variable 'Function'.ts(2451)
对于每个声明Function
:
const EditableCell: React.FC<Props> = (props) => {
const {
input: any,
value: string,
selected: Function,
active: boolean
onSelect: Function,
onActivate: Function,
onUpdate: Function
} = props
顺便说一句,这两个代码块立即相互跟随
解决方案
在解构道具时删除类型分配。
const {
active,
error, // unknown
input, // unknown
onActivate,
onKeyUp,
onSelect,
onUpdate,
readonly,
selected,
value
} = props
小心 -
不要使用任何和 Function 类型,使用适当的类型而不是它们!
推荐阅读
- .net - Lucene.net 不返回搜索结果
- matlab - 包含文件路径的代码中的 MATLAB 换行
- node.js - 与所有包共享根 package.json 中的工具
- hash - 自定义哈希函数
- sails.js - https 在sailsjs的localhost中不起作用
- php - 在 codeigniter 中是否有任何方法可以检查 ( $this->db->group_start(); ) 即组是否已经启动。或任何这样做的技巧
- php - 使用 PHP ODBC 驱动程序查询 Pervasive Database PSQL
- node.js - Node.js 中的 SQL Server:查询在服务器上工作,但不能通过 Node.js 驱动程序
- javascript - 捕捉到多个图层上的要素
- python - 循环遍历列表及其以逗号分隔的子字符串