2013-11-25 60 views
2

有誰知道爲什麼Aptana 3會將jquery-ui的文檔中的某些代碼識別爲錯誤?例如,語法有效的jquery/javascript語法的錯誤?

{ 
     "title": 
      "Accordion Widget", 
     "excerpt": 
      "Convert a pair of headers and content panels into an accordion.", 
     "termSlugs": { 
      "category": [ 
       "widgets" 
      ] 
     } 
    } 

Syntax Error: Unexpected Token ":"

enter image description here

+1

那麼,什麼是錯誤的? – Musa

+1

難道你不應該'var X = {...};'在'script'標籤內嗎?沒有這些,它就沒有意義/功能。或者至少將它作爲函數參數傳遞。 –

回答

3

它看起來像你的開發環境解析對象文本的語句塊(這可能是做正確的事,因爲花括號並不總是考慮作爲Javascript解析器本身的對象文字)。

如果是這樣,那麼字符串文字後的冒號字符確實是語法錯誤。

+0

謝謝。那麼它在我的配置中對於開發環境來說肯定有點麻煩? – laukok

+1

@lauthiamkok,我會出去的肢體,並說你應該刪除該腳本。它僅用於文檔目的,並且您的環境在拒絕它時很可能是合法的。另外,作爲一個快速修復,你可以在第一個大括號前放置一個'!'運算符。它將強制構造被解析爲對象字面值,並且您的環境應該停止投訴。 –

+0

謝謝。是的,我認爲我應該從jqeury ui中刪除該文檔文件夾。好想法! – laukok

4

這些腳本塊似乎包含JSON而不是JavaScript,但它們沒有type屬性來說明(JavaScript是腳本元素的默認數據類型)。因此,它們被解析爲JavaScript並引發錯誤。

(該{作爲一個塊,而不是對象文本的開放治療,"title"然後是一個字符串,而不是一個屬性名稱,:是錯誤的)

+0

謝謝。那麼我該怎麼配置aptana才能識別那個呢? – laukok

+0

配置?我可以完全關閉JavaScript語法檢查。該工具正在做正確的事情,那裏*是*代碼中的錯誤。如果我正在寫這些,那麼我會在腳本元素中添加'type =「application/json」'(或者更可能的是,重新考慮我首先將這些數據添加到文檔中的方式)。 – Quentin

+0

它是jquery的一個文件夾部分,所以我不認爲我可以改變這個...謝謝。 – laukok