2017-10-20 38 views
0

我有一個非常簡單的陣營登錄頁面:陣營:的setState沒有定義,我已經嘗試過這種綁定

import React from "react"; 
import {browserHistory} from 'react-router'; 

export default class Login extends React.Component{ 
    constructor(){ 
    super(); 
    this.handleEmail = this.handleEmail.bind(this); 
    this.handlePW = this.handlePW.bind(this); 
    this.handleLogin = this.handleLogin.bind(this); 
    this.state = { 
     email: "", 
     pw: "", 
    } 
    } 

    handleEmail(event){ 
    this.setState({email:event.target.value}); 
    console.log(setState); 
    } 

    handlePW(event){ 
    this.setState({pw:event.target.value}); 
    console.log(setState); 
    } 

    handleLogin(){ 
    console.log("clicked"); 
    } 

    render(){ 
    return(
     <div> 
     <form> 
      Email: 
      <br/> 
      <input type="text" id="email" onChange={this.handleEmail}/> 
      <br/> 
      PW: 
      <br/> 
      <input type="text" id="pw" onChange={this.handlePW}/> 
      <input type="submit" value="Submit" id="submit" onClick={this.handleLogin}/> 
     </form> 
     </div> 
    ) 
    } 
} 

我遇到了以下錯誤:「的ReferenceError:的setState沒有定義」

目標是讓我在提交按鈕單擊時指定電子郵件和密碼的值。我讀了一些其他的StackOverflow問題,看來問題在於這個綁定 - 我試圖在構造函數中解決這個問題。什麼導致了這個錯誤?

+0

你的問題是什麼? –

+0

對不起,我不明白 - 我得到一個「ReferenceError:setState未定義」的錯誤,但我不知道如何解決它 – askakdagr8

+0

我認爲狀態設置得很好,錯誤來自控制檯日誌語句,你錯過了「this」 –

回答

1

如果您的目標是將您的狀態記錄到控制檯,則應使用console.log(this.state)

相關問題