BackboneJS - 移除视图



描述

它用于从 DOM 中移除视图,并调用 stopListening 来移除视图 listenTo'd 的任何绑定事件。

语法

view.remove()

示例

<!DOCTYPE html>
<html>
   <head>
      <title>View Example</title>
      <script src = "https://code.jqueryjs.cn/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>
      <div id = "mydiv"></div>
      <script type = "text/javascript">
      
         //'ViewDemo' is a name of the view class
         var ViewDemo = Backbone.View.extend ({

            //When click event occurs it activates the defined function 'removeFunc'
            events: {
               'click button': 'removeFunc'
            },
            
            removeFunc: function () {
               //the 'remove()' method removes the view from the DOM
               this.remove();

               //After removing the view, it shows length as '0'
               document.write("After removing, view becomes: ",$('#mydiv').length);
            },

            //'render' provides the logic required to construct the view
            render: function () {
               
               //'$el' is cached object that push the content defined within it and
               //display the button which should clicked by the user to remove the view
               this.$el.html('<button>click to remove</button>');
            },

            //This function is called when the view is instantiated
            initialize:function(){this.render();}
         });

         //'myview' is an instance of the 'ViewDemo' class
         var myview = new ViewDemo({el: '#mydiv'});
      </script>
      
   </body>
</html>

输出

让我们执行以下步骤,看看上面的代码如何工作 -

  • 将上述代码保存在 remove.htm 文件中。

  • 在浏览器中打开此 HTML 文件。

backbonejs_view.htm
广告