2012-06-02 48 views
0

我正在使用haml編碼以下代碼。我基本上在我的index.html.haml文件中有一堆嵌套的if-else語句。但是,我不斷收到以下代碼的語法錯誤。html.haml文件中的if-else語句的語法錯誤

- if current_user 
    :javascript 
    window.is_logined_in = true; 
    window.currentUserJSON = #{@current_user_json}; 
    //Getting syntax error for the line below 
    - if window.currentUserJSON.user.following_count == 293 && window.currentUserJSON.user.answer_count == 276 
     window.complete_orientation = true; 
    - else 
     window.complete_orientation = false; 
- else 
    :javascript 
    window.is_logined_in = false; 

enter image description here

如何修改我的代碼來解決這個語法錯誤?

回答

0

不能像這樣在:javascript塊內使用-前綴。 你是從字面上寫代碼到JavaScript,這是造成錯誤, ,但你應該能夠做到這一點,沒有前綴-,因爲它已經是JavaScript。

- if current_user 
    :javascript 
    window.is_logined_in = true; 
    window.currentUserJSON = #{@current_user_json}; 
    //Getting syntax error for the line below 
    if (window.currentUserJSON.user.following_count == 293 
     && 
     window.currentUserJSON.user.answer_count == 276 
    ) { 
     window.complete_orientation = true; 
    } else { 
     window.complete_orientation = false; 
    } 
- else 
    :javascript 
    window.is_logined_in = false; 

JavaScript代碼本身有點冗長,但它應該做的工作。

+0

謝謝!得到它了。 – Zhen