在使用 Backbone.js 时,如果在视图中遇到了额外的标签,可以通过以下方法删除这些标签:
tagName
属性设置视图的标签类型。例如,如果您希望视图使用的标签是 <div>
,则可以在视图中设置 tagName: 'div'
。var MyView = Backbone.View.extend({
tagName: 'div',
render: function() {
this.$el.html('<p>Hello, world!</p>');
return this;
}
});
className
属性设置视图的类名。这将允许您在视图中使用自定义类,而不是额外的标签。var MyView = Backbone.View.extend({
className: 'my-view',
render: function() {
this.$el.html('<p>Hello, world!</p>');
return this;
}
});
el
属性将视图绑定到现有的 DOM 元素。这样,您可以避免在视图中添加额外的标签。var MyView = Backbone.View.extend({
el: '#my-element',
render: function() {
this.$el.html('<p>Hello, world!</p>');
return this;
}
});
events
属性将视图中的事件绑定到特定的元素。这样,您可以确保只有所需的元素触发事件。var MyView = Backbone.View.extend({
events: {
'click .my-button': 'onButtonClick'
},
render: function() {
this.$el.html('<button class="my-button">Click me!</button>');
return this;
},
onButtonClick: function() {
console.log('Button clicked!');
}
});
通过使用这些方法,您可以确保视图中不会出现额外的标签,从而使您的代码更加简洁和高效。
关于这个router的使用,我现在依然是心存疑惑的。每点击一次这样的链接 action 会触发一个事件,但是url也会改变,这样刷新的话,岂不是会自动触发事件。或者这个东西只是用在单个页面的网站上,或者移动设备网站上,或者是我还不会用。
领取专属 10元无门槛券
手把手带您无忧上云