당신의 논리가 어떤 잘못된 생각을 가지고 ..
var cool = {};
cool.Item = Backbone.Model.extend({});
cool.Items = Backbone.Collection.extend({
model: cool.Item,
url: this.return(cool_cont());
function cool_cont()
{
* JSON object*
}
이 코드 나던 작업 작동합니다. 여기에서 작동하는 예제는 url-attribute를 data.json
으로 정의한다는 것입니다. 불러올 때 백본이 해당 URL에 대해 ajax
요청을하고 (귀하의 파일에 걸려 넘어 질 때) 콘텐츠를 반환합니다 (사용자의 json 데이터).
두 번째 시도는 모든 것이 잘못되는 부분입니다. 첫째 :이 수행 (또는 가능성하지 않습니다) 그리고 난 알고 싶지 않아 모르는
url: this.return(cool_cont());
. URL을-속성/함수의 기본 전제는 그것이
그래서 당신이 여기에서하는 것은 당신이 원하는 데이터를 전달한다는 것이다 Backbone.js docs (실화)에서
Set the url property (or function) on a collection to reference its location on the server.
-Quote에 의미이다 귀하의 컬렉션을 서버의 위치에 대한 참조로 채 웁니다. 솔직하게 말해서 당신이 그렇게하지 않았다고 생각합니다. 이것은 틀린 것입니다.
그래서 URL == path_to_your_data_be_it_url_or_file 문자열 (일명 정적 경로) 또는 기능을 할 수있는 하나
URL (예를 들어 그것의 일부로 모델의 일부 특성을 사용하여 경로를 생성). 당신이 당신의 컬렉션에 일부 가짜 데이터를 삽입 할 외부 파일을하지 않으려면
, 그것은 다음과 같이 수행이 도움이
var json_data = [
{"foo": "bar"}, // model 1
{"foo": "bar2"}, // model 2
...
{"foo": "barN"}, // model N
];
var options = {...}; // optional
var myCollection = new MyCollection(json_data, options);
희망을!
'return'은 예약어가 아닌가요? – stusmith
this this.return (cool_cont()가 this.cool_cont()가 아닐까요?) * JSON 객체 *가 정확히 무엇입니까? 전체 코드를 게시하십시오 "작동하지 않습니다"라고하면 – schacki