如何解决Rivets js 从 0.5.13 升级到 0.9.4 打破了现有的绑定输入
我使用的是带有主干 js 的铆钉 js 0.5.13 版本,我想将其更新为铆钉 0.9.4,但在更新版本后预先绑定输入和其他未显示数据的 html 元素。下拉列表和复选框也会发生同样的情况。我有很大的模板,所以不能在这里写,只发布模板的一小部分。
我有骨干模型绑定到这样的铆钉
@rv = rivets.bind @$el,{ model: @model }
@model 是主干模型 和模板是这样的
<div class="ui form">
<input type="text" maxlength="30" data-rv-input="model.button_label" />
</div>
和铆钉配置是这样的
rivets.binders.input =
publishes: true
routine: rivets.binders.value.routine
bind: (el) ->
$(el).bind('input.rivets',this.publish)
unbind: (el) ->
$(el).unbind('input.rivets')
rivets.binders['toggle-class'] = (el,value) ->
if value
el.classList = $(el).attr("data-base-classes") + " " + value
rivets.binders['style-*'] = (el,value) ->
el.style.setProperty(this.args[0],value)
rivets.binders['attr-*'] = (el,value) ->
el.setAttribute(this.args[0],value)
rivets.configure
prefix: "rv",adapter:
subscribe: (obj,keypath,callback) ->
callback.wrapped = (m,v) -> callback(v)
if obj instanceof Backbone.Collection
obj.on('add remove reset sort change',() ->
callback(obj[keypath])
)
# for collection iteration like data-rv-each="model.controls" when control is a collection
# THis is used in row control for interating child controls
else if obj[keypath] instanceof Backbone.Collection
obj[keypath].on('add remove reset sort change',() ->
callback(obj.get(keypath).models)
)
else
obj.on('change:' + keypath,callback.wrapped)
unsubscribe: (obj,callback) ->
if obj instanceof Backbone.Collection
obj.off('add remove reset sort change',() ->
callback(obj[keypath])
)
else if obj[keypath] instanceof Backbone.Collection
obj[keypath].off('add remove reset sort change',() ->
callback(obj.get(keypath).models)
)
else
obj.off('change:' + keypath,callback.wrapped)
read: (obj,keypath) ->
if obj instanceof Backbone.Collection
obj[keypath]
else
if keypath is "cid" then return obj.cid
obj.get(keypath)
publish: (obj,value) ->
if obj instanceof Backbone.Collection
obj[keypath] = value
else
if obj.cid
obj.set(keypath,value);
else
obj[keypath] = value
templateDelimiters: ['{{','}}']
它在 5.13 上运行良好,但在新版本中它不起作用.. 任何帮助都将受到高度评价..
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。