backbone.js el:'jqueySelector'不会't捕获父元素
backbone.js el: 'jqueySelector' doesn't catch parent element
我在Marionette ItemView定义中有以下代码:
class AdProductDetailsView extends Marionette.ItemView
el: '#product-details'
template: =>
price =
amount: if @model.get('price') then @model.get('price').get('amount') else 0
currency: if @model.get('price') then @model.get('price').get('currency') else 'BOB'
AdProductDetailsTemplate
price: Currency.format price.amount, price.currency
contact: @model.get('contact')?.toJSON()
location: @model.get('location')?.toJSON()
问题是页面没有"执行"el:'#product-details'属性。我曾经尝试过将它放在另一个代码中的视图实例化中,但我尝试过,但没有成功。当我运行此代码时,屏幕上不会显示任何内容,但是,如果我在没有el:…的情况下运行它。。。,视图被创建并插入到自己的div中,而我并不真正想要这个div。有什么想法吗?
可能是一个竞争条件,因为您将此视图分配给#product-details
,所以在实例化该视图之前,它需要存在于DOM中。
这就解释了为什么在没有el
的情况下它可以工作,因为主干会在没有定义DOM元素的情况下创建DOM元素。
相关文章:
- 元素不会添加到Javascript数组中
- 使用jquery添加到表单内部表中的元素不会过帐
- 比较数组中的连续元素不会返回任何结果(javascript)
- 动态添加的输入元素不会在脚本中返回值
- 元素不会为 JS 切换功能显示
- 未来元素不会与 on() 绑定
- 所选列表元素不会保持选中状态(通过ajax请求更新后)
- 动态隐藏列表中的元素,而隐藏的元素不会占用页面上的空白空间
- 谷歌地图API V3-元素不会隐藏点击事件切换
- RaphaelJS中的文本元素不会在触摸设备上拖动
- Javascript创建的元素不会在提交时发布
- 滚动浏览列表元素不会在第一次点击时开始
- CSS 元素不会正确对齐
- iframe 元素不会自动删除内容
- 拖放 - 元素不会拖放
- 向右浮动的元素不会激活过渡
- D3 SVG 图表中的现有元素不会更新 - 所有元素都被视为 exit() 和 enter() 集
- 使用路由更改视图后,jquery 元素不会呈现
- 在移动设备上显示时,元素不会居中,并且不会修复背景
- Jquery 动态创建的元素不会 ClearTimeout();