2015-06-21 4 views
0

Я пытаюсь обновить свой famous.js поверхность content с помощью метеора Blaze.toHTMLWithData(template, data), как Blaze.toHTMLWithData(Template.roomIlanSpecsTemplate, data), с помощью пользовательского шаблона в функции создание известного surface внутри известный view. Я хочу передать шаблон в функции cursorToArray в зависимости от типа документа, возвращаемого его обратным вызовам. Но я не могу иметь отображаемую страницу в браузере, даже в консоли нет ошибок. Если я использую hardcoded версию, например, функцию createFn для каждого другого шаблона, а затем defineinig и cursorToArray fucntion с этой функцией, она работает.Передача Blaze шаблона в качестве параметра для функции создает Famous.js поверхность

Что может случиться, что я пропущу здесь?

cursorToArray = function(cursor, renderablesArray, template, createFn){ 
    //each callback should decide which createFn to use based on result document, cos each result has a different template so a createFn. 
    cursor.observe({ 
    addedAt: function(document, atIndex, before) { 
     renderablesArray.splice(atIndex, 0, createFn(document, template));//createRoomIlanView, createRoomRenterIlanView, createFriendLookupIlanView 
    }, 
    changedAt: function(newDocument, oldDocument, atIndex) { 
     renderablesArray[atIndex] = createFn(newDocument, template); 
    }, 
    }); 
} 
cursorToArray(Ilans.find(), ilanViews, Template.roomIlanSpecsTemplate, createIlanView); 

часть createFn Definiton:

function createIlanView(data, template){ 
     var ilanSpecsSurface = new Surface({ 
      content: Blaze.toHTMLWithData(template, data), 
      properties: { 
      fontSize: "14px" 
      } 
     }); 

     return ilanSpecsSurface; 
    } 
+0

Где вы добавляете свою новую 'Поверхность' в th e context of 'FamousEngine' – talves

+0

Я отредактировал теги соответствующим образом. –

+0

фактическое создание ... функция создает famo.us 'view'. adn добавляет к ним ветки с «модификаторами» и «поверхностями». Поверхность выше - одна из поверхностей на кончике этих ударов, вытекающих из «взгляда». –

ответ

0

Если речь идет о старшем Famous что об использовании реактивной поверхности от https://stackoverflow.com/a/30445791/2288496

var ReactiveTemplate = famodev.ReactiveTemplate; 


var reactive = new ReactiveTemplate({ 
    template: Template.mytemplate, 
    data: Collection.find().fetch(), 
    properties: {} 
}); 

Хороший пример того, как реализовать маршрутизации, подписками и т. д. https://github.com/sayawan/flowwy

 Смежные вопросы

  • Нет связанных вопросов^_^