Javascript 已在服务器上拆分Vue对象
我在使用VueJS和Python后端的一个工作项目中遇到了一个奇怪的情况。它甚至可能与Vue毫无关系 我正在使用Vue组件的Javascript 已在服务器上拆分Vue对象,javascript,jquery,vue.js,vue-component,Javascript,Jquery,Vue.js,Vue Component,我在使用VueJS和Python后端的一个工作项目中遇到了一个奇怪的情况。它甚至可能与Vue毫无关系 我正在使用Vue组件的$data属性来存储发送到后端的参数。其中一个选项是列表,所以在前端执行此操作时 this.$data.option 你会得到类似的东西 ["/dev/sda2 mounted at /boot", "udev mounted at /dev", "/dev/mapper/ubuntu--vg-root mounted at /"] 之后,我只需向服务器发出一个aja
$data
属性来存储发送到后端的参数。其中一个选项是列表,所以在前端执行此操作时
this.$data.option
你会得到类似的东西
["/dev/sda2 mounted at /boot", "udev mounted at /dev", "/dev/mapper/ubuntu--vg-root mounted at /"]
之后,我只需向服务器发出一个ajax请求
$.ajax({url: url, type: "POST", data: this.$data})
但我的服务器接收到的不是预期的逗号分隔值字符串,而是这种混乱
'options[0][label]': u'/dev/mapper/ubuntu--vg-root mounted at /',
'options[0][value]': u'/dev/mapper/ubuntu--vg-root mounted at /',
'options[2][label]': u'/dev/sda2 mounted at /boot',
'options[2][value]': u'/dev/sda2 mounted at /boot',
'options[4][label]': u'udev mounted at /dev',
'options[4][value]': u'udev mounted at /dev',
这是我存储选项的选择字段的一部分
我尝试将对象转储到JSON并将其解析回来,但没有成功
original_data = JSON.parse(JSON.stringify(this.$data));
为什么要将此.$data发送到服务器。它不应该是
this.$data.options
?this.$data是一个对象,它有几个字段,我正在跟踪这些字段,我对其中的一些字段感兴趣,而不是全部字段。我曾想过将它们放入一个纯javascript对象,但这不是一个有效的解决方案,因为这只是一个补丁,如果我再次遇到这种情况,将来还需要做更多的工作。为什么要向服务器发送this.$data
。它不应该是this.$data.options
?this.$data是一个对象,它有几个字段,我正在跟踪这些字段,我对其中的一些字段感兴趣,而不是全部字段。我曾想过将它们转换成一个纯javascript对象,但这并不是一个有效的解决方案,因为这只是一个补丁,如果我再次遇到这种情况,我将在将来进一步处理。