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

Django模板中的Vue.js

蒋乐意
2023-03-14
问题内容

我正在尝试在Django模板中使用Vue.js。以下是一种这样的模板:

{% load static %}
<!DOCTYPE html>
<html>

<head>
</head>

<body>
    <div id="myApp">
        <span>Hello [[ message ]]</span>
        <div id="map"></map>
    </div>
    <script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
    <script src="https://v1.vuejs.org/js/vue.js"></script>
    <script src="{% static 'js/script.js' %}"></script>
    <script async defer src="https://maps.googleapis.com/maps/api/js?key=KEY&callback=initMap"></script>
</body>

</html>

我将Vue的插值定界符更改为 [[]], 以避免与Django发生冲突。我的script.js样子如下:

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

不幸的是,呈现的HTML包含[[ message ]]。还有其他人遇到过类似的问题吗?


问题答案:

正如Vue v1.0的每个文档所说:

// ES6 template string style
Vue.config.delimiters = ['${', '}']

因此,在您的示例中更改为:

$(function() {
    Vue.config.delimiters = ['[[', ']]'];
    var app = new Vue({
        el: '#myApp',
        data: {
            message: 'Hello, world!'
        }
    });
});

但是,强烈建议您使用新版本的Vue(版本2)以便保持最新!



 类似资料:
  • 问题内容: 我正在寻找一种使用django中的模运算符之类的方法。我想做的是在循环中的每个第四个元素中添加一个类名。 使用模数,它看起来像这样: 当然,这是行不通的,因为%是保留字符。还有其他方法吗? 问题答案: 您需要divisibleby(内置的django过滤器)。

  • 是时候把数据展示出来了!Django提供了一个非常有用的内置来实现-—|-模板标签 什幺是模板标签呢? 正如你在前面章节中所了解的那样, 我们并不能将 Python 代码嵌入到HTML中。 因为浏览器不能识别 Python 代码, 它只能解析HTML。 我们知道,HTML是静态页面,而 Python 则显得更加动态。 Django模板标签允许我们将Python之类的内容翻译成HTML,所以你可以更

  • 在上一章节中我们使用 django.http.HttpResponse() 来输出 "Hello World!"。该方式将数据与视图混合在一起,不符合 Django 的 MVC 思想。 本章节我们将为大家详细介绍 Django 模板的应用,模板是一个文本,用于分离文档的表现形式和内容。 模板应用实例 我们接着上一章节的项目将在 HelloWorld 目录底下创建 templates 目录并建立 h

  • 我创建了新项目,但找不到出错的地方。 Django versiob - 3.1.5 蟒蛇 3.7.4 模板DoesNotExist位于/index。html请求方法:GET请求URL:http://127.0.0.1:8000/Django版本:3.1.5异常类型:TemplateDoesNotExist异常值: 索引。html异常位置:C:\Users\user\PycharmProjects\

  • 问题内容: 何时特别扩展模板以及何时使用include?是否包含与用户个人资料部分(例如我们在网站一角的关于我)之类的内容的任何使用? 问题答案: 扩展允许你替换父模板中的块(例如“内容”),而不必包括构建页面的各个部分(例如“页眉”和“页脚”)。这样,你就可以拥有一个包含完整布局的模板,并且只需通过替换块就可以“插入”另一个模板的内容。 如果在所有页面上都使用了用户个人资料,则你可能希望将其放在

  • 作为Web 框架,Django 需要一种很便利的方法以动态地生成HTML。最常见的做法是使用模板。 模板包含所需HTML 输出的静态部分,以及一些特殊的语法,描述如何将动态内容插入。 模板引擎配置 模板引擎使用该TEMPLATES设置进行配置。这是一个配置列表,每个引擎一个。 默认值为空。在 settings.py由所产生的startproject命令定义一个更有用的值: 在做下面模板配置的同时,