2
首先我用一口巴貝爾用箭頭功能
編譯我的browserify和巴貝爾束browerify造成語法錯誤
var bundler = browserify(filepath, args)
.plugin(watchify, {ignoreWatch: ['**/node_modules/**', '**/bower_components/**']})
.transform(babelify, {presets: ['es2015', 'react']})
這是我所得到的,當我嘗試運行命令
SyntaxError: browser/components/table.js: Unexpected token (50:14)
48 | }
49 |
> 50 | handleToggle =() => this.setState({ drawer: !this.state.drawer })
| ^
51 |
52 | status(entry) {
53 | if (entry.status === undefined) {
除了箭頭函數之外的其他東西似乎都能正常工作,我無法弄清楚我在這裏做錯了什麼。
export default class TableHandler extends Component {
constructor(props) {
super(props)
this.state = {drawer: true}
}
handleToggle =() => this.setState({ drawer: !this.state.drawer })
render(){
return(
<Drawer docked={false} width={300} open={this.state.drawer} />
)
}
}
有更多的代碼,但我認爲這可能是後添加足夠
你能發佈完整的代碼?它看起來像你想'handleToggle:()=>'如果這是一個對象屬性。 – elclanrs
這是在類聲明中嗎?你不能在類中使用箭頭函數,因爲你只能在類聲明中設置方法而不是屬性,而且它不會有正確的'this'。 – gcampbell
你應該添加通天預設-0級,檢查https://babeljs.io/repl/#?evaluate=true&lineWrap=false&presets=es2015%2Creact%2Cstage-0&code=class%20PostInfo%20extends%20React.Component%20 %7B%0A%09handleOptionsButtonClick%20%3D%圖20(e)%20%3D%3E%20%7B%0A%20%20%20%20this.setState(%7BshowOptionsModal%3A%20true%7D)%3B% 0A%20%20%7D%0A%7D與實驗值=真鬆=假規格=假 –