V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
V2EX  ›  Vue.js

如果一个服务端模版渲染用 Jinja2 的项目想引入 Vue

  •  1
     
  •   Livid · 2020-12-20 05:24:19 +08:00 · 4735 次点击
    这是一个创建于 1439 天前的主题,其中的信息可能已经有所发展或是发生改变。
    会遇到一个问题就是 Vue 和 Jinja2 都用了 {{ variable }} 这样的方式来输出变量。

    目前搜到的一个解决方法是:

    https://blog.fusionscript.info/flask/2018/03/06/using-vue-and-jinja-together.html

    大家还有什么别的思路么?
    8 条回复    2020-12-20 23:32:39 +08:00
    skenan
        1
    skenan  
       2020-12-20 05:53:27 +08:00 via iPhone   ❤️ 5
    之前也研究过这个问题,可以修改 vue 的 delimiter https://testdriven.io/blog/combine-flask-vue/
    Dreax
        2
    Dreax  
       2020-12-20 05:55:43 +08:00   ❤️ 2
    loading
        3
    loading  
       2020-12-20 06:01:29 +08:00 via Android   ❤️ 1
    我在 golang 里也遇到类似问题。基本就是后端前端选一个改,我选择改前端,也就是一楼的方法。
    纯 api 不用模板体验并不好,所以还是必须混合用。
    Yuxiaoy
        4
    Yuxiaoy  
       2020-12-20 09:33:10 +08:00 via Android   ❤️ 1
    https://greyli.com/jinja2-and-js-template/
    看下李辉的几个解决方案
    zjsxwc
        5
    zjsxwc  
       2020-12-20 10:24:24 +08:00 via Android   ❤️ 1
    vue 代码单独写到 *.vue 文件里面,
    jinja 搞个自定义 tag 类似 include 的无脑复制*.vue 文件内容就行。
    mxT52CRuqR6o5
        6
    mxT52CRuqR6o5  
       2020-12-20 10:34:21 +08:00   ❤️ 1
    最简单的方法,不使用{{}}给 vue 输出变量,而是用 v-text 输出,啥配置都不用改
    falcon05
        7
    falcon05  
       2020-12-20 12:48:30 +08:00 via iPhone
    之前我也用 twig 模板引擎也遇到这种问题,这个 stackoverflow 链接提供几种解决方法: https://stackoverflow.com/questions/31480612/conflict-on-template-of-twig-and-vue-js/31525899
    dingyaguang117
        8
    dingyaguang117  
       2020-12-20 23:32:39 +08:00
    我一直是用 {% raw %}
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3185 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 00:36 · PVG 08:36 · LAX 16:36 · JFK 19:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.