如何使用Vuejs的“Moustache”语法进行烧瓶模板化?

时间:2017-07-20 01:44:28

标签: flask vue.js jinja2

似乎有一些重叠。

例如,这段代码:

  <div id="entry">
    <textarea rows="20" v-model="input"></textarea>
    <div>
      {{ input | md }}
    </div>
  </div>
  <script src="https://unpkg.com/vue@2.1.3/dist/vue.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.6/marked.min.js"></script> 
 <script>
var vm = new Vue({
  el: '#entry',
  data: {
    input: ''
  },
  filters: {
    md: function(val){
      return marked(val)
    }
  }
})
</script>

似乎在这里工作正常:https://jsfiddle.net/5qvc815w/(除了在降价时呈现的html标签)

但在烧瓶中我正在

jinja2.exceptions.TemplateAssertionError
TemplateAssertionError: no filter named 'md'

它似乎正在寻找jinja2来发现花括号中的什么而不是vue.js它应该做什么。

1 个答案:

答案 0 :(得分:2)

当Vue的默认分隔符用于插值与其他框架冲突时,您可以customize them

var vm = new Vue({
  delimiters:['${', '}'],
  el: '#entry',
  data: {
    input: ''
  },
  filters: {
    md: function(val){
      return marked(val)
    }
  }
})

像这样使用:

<div>
  ${ input | md }
</div>