1

작동하지 않습니다.fetch() 수집 backbone.js 내가 오류 데이터를 얻을 API의 URL을 호출하고 뷰에 전달하지만, 발생 할

Uncaught TypeError: Cannot read property 'localStorage' of undefined 
    at G.d.Backbone.sync (backbone.localStorage-min.js:8) 
    at G.d.fetch (backbone-min.js:23) 
    at G.d.initialize (backbone:120) 
    at G.d.g.Collection (backbone-min.js:18) 
    at new G.d (backbone-min.js:38) 
    at backbone:137 

코드 :

var app = {}; 
 
app.postCollection = Backbone.Collection.extend({ 
 

 
    url: 'https://jsonplaceholder.typicode.com/comments', 
 
    initialize: function(){ 
 
    this.fetch({ 
 
     success: this.fetchSuccess, 
 
     error: this.fetchError 
 
    }); 
 
    }, 
 

 
    fetchSuccess: function (collection, response) { 
 
    console.log('Collection fetch success', response.data); 
 
    /*console.log('Collection models: ', this.models);*/ 
 
    }, 
 

 
    fetchError: function (collection, response) { 
 
    throw new Error(" fetch error"); 
 
    } 
 

 
}); 
 

 
try { 
 
    app.postcollection = new app.postCollection(); 
 
} 
 
catch (e) { 
 
    console.log(e.message); 
 
}
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script> 
 
    \t \t <script src="http://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.3.3/underscore-min.js" type="text/javascript"></script> 
 
    \t \t <script src="http://cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.2/backbone-min.js" type="text/javascript"></script> 
 
    \t \t <script src="http://cdnjs.cloudflare.com/ajax/libs/backbone-localstorage.js/1.0/backbone.localStorage-min.js" type="text/javascript"></script>

답변

1

당신은 로컬 스토리지의 이전 버전을 사용하고 있습니다. https://cdnjs.cloudflare.com/ajax/libs/backbone-localstorage.js/1.1.16/backbone.localStorage.js

또한 예를 들어, 새 버전으로 업데이트, 당신은 localStorage: new Backbone.LocalStorage("SomeCollection"),

Working JSFiddle

같은 컬렉션 localStorage 속성을 지정해야
관련 문제