2015-05-27 2 views
1

Я хотел бы включить markdown текст как часть моего шаблона. Я использую angular-meteor и я вижу 2 варианта:Какой лучший способ включить уценку в угловом метеор?

  • установить пакет углового, таких как angular-markdown-directive
  • включают файл без .ng.html постфикса и использовать уценки метеора как это: {{#markdown}}{{>innerPreview}}{{/markdown}}

ли есть другие альтернативы? это будет работать? какая из них лучше?

ответ

2

Я создал пакет oshai:angular-marked в атмосфере от hypercube's package. вы можете найти его в атмосфере.

1

В какой-то момент я создал свою собственную директиву с помощью вскрытия, но потом решил, что я хочу избавиться от нее и просто использовать то, с чем уже приходил Метеор.

Первое что. У меня есть .html-файл, который я назвал meteorTemplates.html. Я просто размещаю все шаблоны метеоров здесь, которые я использую. У меня только 2, и они маленькие.

В любом случае. Шаблон выглядит следующим образом:

<template name="mdTemplate"> 
    {{#markdown}}{{md}}{{/markdown}} 
</template> 

Внутри моего контроллера у меня есть:

$scope.my.markdown = '#Markdown'; 

Согласно angular-meteor документации:

The meteor-include directive holds the Angular scope of the directive as the as Template.currentData of the Meteor template. 

Итак, Template.currentData == $ сфера.

Тогда внутри помощника шаблона я буду использовать Template.currentData() как $ scope.

Template.mdTemplate.helpers({ 
    md: function() { 
     return Template.currentData().getReactively('my.markdown'); 
    } 
}); 

Мой ng.html файл будет выглядеть следующим образом:

<div id="markdown-preview"> 
    <meteor-include src="mdTemplate"></meteor-include> 
</div> 
Смежные вопросы