vue.js与后台模板引擎“双花括号”冲突时的解决办法

Posted qkabcd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue.js与后台模板引擎“双花括号”冲突时的解决办法相关的知识,希望对你有一定的参考价值。

后台渲染模板如swig,也使用“{{ }}“作为渲染,与前端vue的产生冲突,此时只要在新建Vue对象时,添加delimiters: [‘${‘, ‘}‘],就搞定了,代码如下

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
    

    <title>Blog Template for Bootstrap</title>

   
   
  </head>

  <body>

   <div id="app">
   555
  ${message }
</div>


    <!-- Bootstrap core javascript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    
    <script src="/public/js/vue.js"></script>
    
    
    <script>
    //Vue.config.delimiters = [‘${‘, ‘}$‘];
        var app= new Vue({
         delimiters: [${, }],
    el:#app,
    data:{
        regDom: 1
        ,loginDom: 0
        ,message: Hello Vue!
        
    }
});
    </script>
  </body>
  
</html>

官方参考地址:http://vuejs.org/api/#delimiters

以上是关于vue.js与后台模板引擎“双花括号”冲突时的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Vue.js - 双花括号(Mustache)语法不起作用/渲染到页面

vue.js与后台{{}}冲突的解决办法

Vue 和 Django mustache 模板冲突

Twig 和 Vue.js 的模板冲突

是否可以将 AngularJS 与 Jinja2 模板引擎一起使用?

vue.js的学习总结