个性化阅读
专注于IT技术分析

backbone.js集合url

Backbone.js集合url方法用于创建集合的实例并显示资源所在的位置。

句法:

collection.url()

让我们以一个示例来部署url方法。

请参阅以下示例:

<!DOCTYPE html>
   <head>
      <title>URL Collection Example</title>
         <script src="https://code.jquery.com/jquery-2.1.3.min.js" type="text/javascript"></script>
         <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js" type="text/javascript"></script>
         <script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js" type="text/javascript"></script>
   </head>
   <body>
      <script type="text/javascript">
         var MyModel = Backbone.Model.extend({});  ////'MyModel' is a model name

         //The 'MyCollection' is an instance of the collection
         var MyCollection = Backbone.Collection.extend({
            model: MyModel   //The model 'MyModel' is specified by overriding the "model" property
         });

         //The model "MyBlog" contains default values for 'user' and 'myposts' attributes
         var MyBlog = Backbone.Model.extend({
            defaults: {
            user: null, myposts: []
         }, initialize: function () {
            var myval = this;

            //Model 'MyModel' gets the 'user' and 'myposts' from the model 'MyBlog' by referring to the current object
            this.MyModel = new MyModel(this.get('user'));
            this.posts = new MyCollection(this.get('myposts'));
            this.posts.url = function () {
               return myval.url() + '/myposts';
            };
         }, //It enables the url() function by using the id attribute to generate the URL as "/MyBlog/50/myposts/26"
         urlRoot: '/MyBlog/'
         });
         var attributes = {
            id: 50, myposts:[{id: 26}]
         }

         //The model "MyBlog" will access the attributes and display the url using 'url()' function
         val = new MyBlog(attributes);
         val.posts.each(function (MyModel) {
            document.write("The url pattern is: ", MyModel.url());
         });
         </script>
         </body>
      </html>

输出:

将以上代码保存在url.html文件中,然后在新的浏览器中打开该文件。

赞(0)
未经允许不得转载:srcmini » backbone.js集合url

评论 抢沙发

评论前必须登录!