参数“key”"val"隐式具有“any”类型。

查看一些资料也没弄懂,公司要求用typescript写,有谁可以解答一下
clipboard.png

clipboard.png

问题描述

参数“key”"val"隐式具有“any”类型。
history 不存在 我用了prop-types 也无效

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
import * as React from "react";
// import PropTypes from 'prop-types';
export interface Props {

user: string;
pwd?: string;
key :any;

}

interface State {

user: string;
pwd?: string;

}
class Login extends React.Component<Props, State> {

constructor(props: Props) {
    super(props)
    this.state = {
        user: '',
        pwd: ''
    }
    this.register = this.register.bind(this)
}
register(){
    this.props.history.push('/register')
}
onInputChange(key,val) {
    this.setState({
        [key]:val
    })
    // // console.log(event.target.value)
    // this.setState({})
}
// handleLogin(){
//     this.props.login(this.state)
// }
render() {
    return (
        <div>
            <form>
                <div>
                    <label>用户名:</label>
                    <input type='text' placeholder="请输入名称" value={this.state.user} onChange={v => this.onInputChange("user",v)} />
                </div>
                <div>
                    <label>密码:</label>
                    <input type='text' placeholder="请输入密码" value={this.state.pwd} onChange={v => this.onInputChange("pwd",v)} />
                </div>
                <button onClick={this.register}>登录</button>
            </form>
        </div>
    )
}

}
// Login.propTypes = {
// register: PropTypes.string
// };

export default Login;

你期待的结果是什么?实际看到的错误信息又是什么?

阅读 10k
2 个回答
interface State {
   user: string;
   pwd?: string;
  [key: string]: string;
}
 export interface Props {       
    user: string;
    pwd?: string;
    history: array
}

不行,还是那些错误

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Microsoft
子站问答
访问
宣传栏