2017-08-01 47 views
0

我有一個看起來像這樣的組件:ES林特投擲無閒置-瓦爾錯誤的構造函數變量

class NavPane extends Component { 
    constructor(props) { 
    super(props); 
    let lastX = 0; 
    } 
    NavOnTouchStart = (e) => { 
    this.lastX = e.touches[0].clientX; 
    } 
    NavOnTouchMove = (e) => { 
    const currentX = e.touches[0].clientX; 
    if (currentX > this.lastX + 10) { 
     this.props.toggle(); 
    } 
    this.lastX = currentX; 
    } 
    render() { 
    return (
     <Collapse 
     ... 
     </Collapse> 
    ); 
    } 
} 

export default onClickOutside(NavPane); 

執行時,這種運行良好,但ES林特似乎並不同意。它不斷拋出下面的錯誤的變量lastX

21:9錯誤「lastX」被分配一個值,但從來沒有使用過 沒有閒置,瓦爾

有人能幫助我理解這裏發生了什麼?我意識到,常量作用域的塊該變量定義在這是爲什麼它拋出一個錯誤,因爲我不是它使用它在構造函數。但是,當我使用var代替ES Lint時,它也是嬰兒牀。

回答

1

試試這個:

constructor(props) { 
    super(props); 
    this.lastX = 0; 
    }