当前位置: 首页 > 面试题库 >

如何通过Vue而不是Jinja进行渲染

廖夜洛
2023-03-14
问题内容
<template id="task-template">
    <h1>My Tasks</h1>
    <tasks-app></tasks-app>
    <ul class="list-group">
        <li class="list-group-item" v-for="task in list">
            {{task.body|e}}
        </li>
    </ul>
</template>

以上是我的html。我想改为通过Vue呈现代码。

<script>
    Vue.component('tasks-app', {
        template: '#tasks-template',
        data: function() {
            return {
                list: []
            }
        }
        created: function() {
            $.getJson('/api/tasks', function(data) {
                this.list = data;
            })
        }
    })
    new Vue({
        el: 'body',
    });
</script>

上面是我的Vue代码,Jinja提出了一个例外,即“任务”未定义,我希望的是Vue而不是Jinja呈现的html代码,我知道可以在Laravel中使用以下代码来完成:

"@{{task.body}}"

由于我是Jinja的新手,所以有人可以帮助我吗?


问题答案:

另一个选择是重新定义Vue.js使用的分隔符。如果你有很多现有的模板代码,并且希望开始将Vue.js功能添加到Flask或Django项目中,则这非常方便。

var app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  },
  delimiters: ['[[',']]']
})

然后在你的HTML中,你可以混合使用Jinja和Vue.js模板标签:

    <div id="app">
      {{normaltemplatetag}}
      [[ message ]] 
    </div>

不知道何时添加了“ delimiters”属性,但该属性在2.0版中。



 类似资料:
  • 问题内容: 有时,当我尝试启动Firefox时,它会显示“ Firefox进程已在运行”。所以我必须这样做: 我想要的是一个可以为我完成所有任务的命令。它会在进程列表中使用一个输入字符串并将其(或其他内容)放入其中,并杀死输出中的所有进程: 我尝试在PHP中执行此操作,但似乎只显示已在PHP脚本本身中执行过的进程(因此,它显示的唯一进程是其自身。) 问题答案: 详细信息:http : //linu

  • 问题内容: 我有以下代码可以SSH到节点并从其他设备中找到RSSI。 bot_ipv6是ssh到的ipv6地址的列表,脚本使用pexpect来ssh。 数据现在包含该设备的输出。 我想浏览数据并仅获取地址及其对应的RSSI。当命令可以在本地运行并输出到文件时,此代码有效: 匹配和匹配行是在其中定义的函数,在其他地方则在文件中查找以将字符与所要查找的字符进行匹配。 我的问题是我不知道如何将数据输出到

  • 问题内容: 使用 DispatcherServlet时 ,出现 java.lang.IllegalStateException:未找到WebApplicationContext:未注册ContextLoaderListener吗? 使用 DelegatingFilterProxy 过滤器时出错。因此,我删除了 DispatcherServlet ,现在改用 ContextLoaderListene

  • 问题内容: 在SQL(MSSQL,Oracle等)中,在联接表时,向JOIN语句添加过滤器而不是在WHERE子句中添加过滤器有什么好处? IE 相对 我意识到这并非在所有情况下都有效,但是我注意到在某些情况下,通过将过滤器条件放在JOIN语句中似乎可以提高性能。但是,由于它是JOIN语句的一部分,因此也会使它的行为有些奇怪。 有什么想法吗? 问题答案: 对于查询,这些过滤器的性能特征将取决于许多因

  • 问题内容: 我想将字符串传递给模板中的某些JavaScript。但是,在运行JavaScript时,字符串被解释为(无效)数字。如何将字符串传递给JavaScript变量? 问题答案: 问题是 呈现为 不包括引号。JavaScript尝试将其解析为数字,但不能。幸运的是,Flask为此提供了一个Jinja过滤器。 将在字符串两边加上引号,并省略数字值。由Jinja呈现时,过滤后的值是具有正确类型的

  • 问题内容: 有没有办法遍历Java SparseArray(适用于Android)?我曾经很容易通过索引来获取值。我找不到一个。 问题答案: 似乎我找到了解决方案。我没有正确注意到该功能。 因此,我将使用以下内容: