2014-02-20 73 views
0

我在JS控制檯中收到錯誤:「ErrorType:SyntaxError,消息:意外的標識符,FuncName:Request UserCallback」。我在這裏尋找答案,並發現一個問題,那個人只是語法潦草。我通過JSLint寫我的代碼,看看我是否有同樣的問題,事實證明我沒有。Crossrider意外標識符,但JSLint通過

此代碼是在擴展範圍運行:

function loadTool() 
{ 
    $('body').prepend(appAPI.resources.get('html/base.html')); 
    appAPI.resources.includeCSS('css/mycss.css'); 
    $('#tool-logo').attr('src', appAPI.resources.get('img/logo-white.png')); 
    $('#tool-nav-btn').attr('src', appAPI.resources.get('img/btn-menu.png')); 

    appAPI.request.get({ 
     url: 'https://url', 
     onSuccess: function(response) {    
      var json = appAPI.JSON.parse(response); 

      if (json.messages) 
      { 
       console.log("User is logged in."); 
       return getColl(); 
      } 

      return $('#tool-content').html(appAPI.resources.get('html/login.html')); 
     }, 
     onFailure: function(httpCode) { 
      return console.log("Failure. HTTP Code: " + httpCode); 
     } 
    }); 
} 

function getColl() 
{ 
    appAPI.request.get({ 
     url: 'https://url', 
     onSuccess: function(response) { 
      console.log("Collections JSON fetched successfully!"); 

      var jsonColl = appAPI.JSON.parse(response); 

      return $('#tool-body').html(appAPI.resources.parseTemplate('html/collections.html', {collections: jsonColl})); 
     }, 
     onFailure: function(httpCode) { 
      return console.log("Failed to GET Collections: " + httpCode); 
     } 
    }); 
} 

報告在我的代碼不給行號,但我相信它指的是任務是執行console.log後(「集合JSON取得成功!「);因爲那會引發火災。我很茫然。

+0

我不認爲這與Chrome擴展有關。 –

+0

該問題可能是由服務器返回的JSON。 – rsanchez

回答

1

在測試您的代碼時,我確定問題在於您的collections.html micro-template語法。 請注意,微模板語法規則嚴格,特別是在使用必須遵循以下語法規則變量時:

  • 變量使用語法需要一個等號(=)簽署
  • 不能有任何空格在語法中使用變量

因此,對於變量使用

<%=varName%>
和不
<% varName %>

[披露:我是一名Crossrider員工,通過我們的支持渠道與@ViciousAmbitious保持聯繫]