子视图不能正确更新

时间:2012-10-24 00:17:00

标签: ember.js

例外行为是:当用户将问题转移到其他两个问题之间的orden变化时

在编写视图Encuesta.View.Pregunta之前,已经实现了切换问题的行为,并且控制器方法mvPregunta正常工作,可以在numero之间更改两个问题之间的位置。

当问题被Encuesta.View.Pregunta切换时问题被切换但是视图不会改变

时,

新视图mvPregunta

脚本

@Encuesta.View.reopen
    Pregunta: Em.View.extend
        tagName: 'span'
        editMode: false,
        attributeBindings: 'draggable',
        draggable: 'true'
        doubleClick: (ev) ->
            @set 'editMode', true
        dragStart: (ev) ->
            data = ev.originalEvent.dataTransfer
            data.setData 'numero', @get 'content.numero'
        dragEnter: (ev) ->
            ev.preventDefault()
            return false;
        dragOver: (ev) ->
            ev.preventDefault()
            return false;
        drop: (ev) ->
            numero = ev.originalEvent.dataTransfer.getData 'numero'
            if numero isnt @get 'content.numero'
                App.get('router.myController').mvPregunta numero, @get 'content.numero'
            ev.preventDefault()
            return false;

    PreguntaTextField: Em.TextField.extend
        editModeBinding: 'parentView.editMode'
        didInsertElement: ->
            @$().focus()
        insertNewline: ->
            @set 'editMode', false
        focusOut: (ev) ->
            @set 'editMode', false

模板

{{#each item in controller.items}}
    <li>
        {{#view Encuesta.View.Pregunta
            contentBinding="pregunta"}}
            {{#if view.editMode}}
                {{view Encuesta.View.PreguntaTextField
                    valueBinding="view.content.texto"}}
            {{else}}
                {{view.content.texto}}
            {{/if}}
        {{/view}}
    </li>
{{/each}}

0 个答案:

没有答案