2016-02-11 15 views
0

我正在試圖用react-rails創建表單。但是我收到一個錯誤:SyntaxError:[stdin]:24:11:意外。 React-Rails

SyntaxError: [stdin]:24:11: unexpected .

通過試用,我發現,這個問題是在第一React.DOM.div線(它的標記代碼),但我不明白,爲什麼它發生了,我檢查一切一百倍:)

組件/ country_form.coffee

@CountryForm = React.createClass 
    getInitialState: -> 
     name: '' 

    valid: -> 
     @state.name 

    handleChange: (e) -> 
     name = e.target.name 
     @setState "#{name}": e.target.value 

    handleSubmit: (e) -> 
     e.preventDefault() 
     $.post '', { country: @state }, (data) => 
      @props.handleNewCountry data 
      @setState @getInitialState() 
     , 'JSON' 

    render: -> 
     React.DOM.form 
      onSubmit: @handleSubmit 
      React.DOM.div # Problem is here 
       className: 'form-group' 
        React.DOM.label 
         'Name' 
        React.DOM.input 
         type: 'text' 
         className: 'form-control' 
         name: 'name' 
         value: @state.name 
         onChange: @handleChange 
      React.DOM.div 
       className: 'form-group' 
        React.DOM.button 
         type: 'submit' 
         className: 'btn btn-primary' 
         disabled: [email protected]() 
         'Save' 

感謝您的幫助!

回答

0

我發現這個問題。 RubyMine(我也認爲IntelliJ IDEA)使用空格縮進CoffeeScript文件。只需將縮進更改爲製表符,並且錯誤將消失。

IntelliJ IDEA settings (CoffeeScript indentions)

1

我認爲它應該再次縮進。

現在,它甚至與onSubmitprop

React.DOM.form 
     onSubmit: @handleSubmit 
     React.DOM.div # Problem is here 
      className: 'form-group' 

,但也許應該再一次增加:

React.DOM.form 
     onSubmit: @handleSubmit 
     # -> 
      React.DOM.div # Problem is here 
       className: 'form-group' 
+0

不,不起作用。問題是縮進,我添加了答案。 –

相關問題