Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我在vue中的阵列会';不影响页面数据的更新?_Javascript_Django_Vue.js - Fatal编程技术网

Javascript 为什么我在vue中的阵列会';不影响页面数据的更新?

Javascript 为什么我在vue中的阵列会';不影响页面数据的更新?,javascript,django,vue.js,Javascript,Django,Vue.js,我正在vue中编写一个简单的应用程序,向服务器请求数据。数据被接收并写入两个对象数组,但它们不会更新为我的html 因为我用的是django,所以我不得不更换delimeters。我检查了数据(如果它真的存在),并尝试了一些虚拟数据,以测试vue应用程序是否工作,以及每个人的想法是否正常 Vue应用程序: var app1 = new Vue({ delimiters :['[[', ']]'], el: "#app-1", data:{ question

我正在vue中编写一个简单的应用程序,向服务器请求数据。数据被接收并写入两个对象数组,但它们不会更新为我的html

因为我用的是django,所以我不得不更换delimeters。我检查了数据(如果它真的存在),并尝试了一些虚拟数据,以测试vue应用程序是否工作,以及每个人的想法是否正常

Vue应用程序:

var app1 = new Vue({
    delimiters :['[[', ']]'],
    el: "#app-1",
    data:{
        questions : [{text:"test", 'pk':1}],
        possible : [{text:"test", 'pk':1}]
    },
    created:()=>{
        let  pk = $("#pk").val()
        SetupCSRF();
        $.ajax({
            type:"post",
            url:"/tester/test/questions",
            data:JSON.stringify({pk:pk}),
            contentType:"application/json",
            dataType:"json",
            success:(data)=>{
                console.log(data);
                this.questions = data.questions;
                this.possible = data.possible;
            }
        });
    }
});
我使用vue的html的一部分:


[[问题.案文]]
去除
[[p.text]]

添加 点击
问题在于:

已创建:()=>{
通过使用箭头函数,您将丢失
上下文。它不会引用Vue实例,而是将这些属性添加到一个不相关的对象:

this.questions=data.questions;
this.probable=data.probable;
试试控制台日志
这个
,看看我的意思

您只需将其更改为正常函数,如下所示:

已创建(){

将:[[question.text]]更改为{{question.text}我将分隔符更改为[[]]由于django的模板语言和它使用的是虚拟数据,它只是不更新。要与vue有反应,您必须有数据插值。这是django的问题。它使用相同的样式将数据写入模板,所以我必须通过设置分隔符来更改:
分隔符:['['],']]
控制台中是否存在错误?