Подтвердить что ты не робот

В чем разница между url vs urlRoot

Я хотел бы знать, в чем разница между использованием url или urlRoot. Я прочитал документацию (backbonejs.org/#Model-url), но я все еще чувствую, что мне не хватает знаний в этой области, и я хотел бы узнать больше. Когда вам нужно использовать url? И в другом случае, когда вам нужно использовать urlRoot?

4b9b3361

Ответ 1

.urlRoot доступен только в модели и полезен только тогда, когда либо модель не является частью коллекции, либо если вы хотите переопределить свойство .url коллекции, частью которой является эта модель.

Другими словами, модель не требует ни свойства .url, ни .urlRoot, когда она является частью коллекции с набором свойств .url, и в этом случае эта модель будет использовать эту коллекцию .url как он принадлежит .urlRoot.

Вот несколько примеров, которые показывают разницу. Когда вы запускаете скрипты, http-запросы можно увидеть в сетевой панели браузера.

Пример 1. Сообщение не входит в коллекцию. urlRoot определяет базовую часть URL-адреса. Когда модель извлекается, ее идентификатор добавляется к urlRoot.

var Post = Backbone.Model.extend({
  urlRoot: 'http://jsonplaceholder.typicode.com/posts'
});

var secondPost = new Post({ id: 2 });
secondPost.fetch();
/*requests http://jsonplaceholder.typicode.com/posts/2 */
<script src='http://code.jquery.com/jquery.js'></script>
<script src='http://underscorejs.org/underscore.js'></script>
<script src='http://backbonejs.org/backbone.js'></script>