Блок EmberJS {{#with}} не отображается

Контроллер выглядит так

class App.ContactsController extends Tower.Controller
  index: (params) ->
    @set('person', App.HighrisePerson.create())
    @render "index"

вид выглядит так

App.ContactsEditView = Ember.View.extend
  templateName: 'contacts/edit'
  resourceBinding: 'controller.person'
  init: (args...) ->
    @._super(args...)
    console.log(@.get('resource'))
    console.log('inited')

с помощью вышеуказанного блока я вижу в консоли, что ресурс установлен на экземпляр моего Ember.Object

но со следующим кодом

div class: "row-fluid", ->
  text "{{#with resource}}"
  text "Hello"
  text "{{/with}}"

соответствующая часть родительского взгляда

div class: "row-fluid contact-form", ->
  div class: "row-fluid", ->
    h1 "Want to work with us?"
    p "So...you want to be kohactivated!?!? Please take a few moments to fill out the form below and provide us with some details about your project, company or start-up."
  text "{{view App.ContactsEditView}}"

я не вижу вывода для привет

если я перейду привет за пределы блока #with, я вижу привет,

поэтому я предполагаю, что по какой-то причине он не распознает ресурс

Любая помощь приветствуется.

1 ответ

Решение

Это верно - он ищет resource в текущем контексте руля, а не в представлении (которое, как я полагаю, для ember.js 0.9.8 больше не является контекстом по умолчанию). Тебе понадобиться view.resource вместо.

(Примечание: наоборот, для ссылки на контекст руля из вида используйте context.whatever)

Другие вопросы по тегам