Javascript 带有JSON数据的Vue isse
我是VUE新手,在VUE数据中将dict转换为JSON时遇到问题 我有一个段落有innerHTMLJavascript 带有JSON数据的Vue isse,javascript,json,vue.js,Javascript,Json,Vue.js,我是VUE新手,在VUE数据中将dict转换为JSON时遇到问题 我有一个段落有innerHTML{'id':'1','name':'test'} 我需要将此字符串转换为Vue中的对象 我尝试: const helloWorld = new Vue({ el:'#helloVue', data: { dict:JSON.parse(JSON.stringify(document.getElementById('vuedata').innerHTML)),
{'id':'1','name':'test'}
我需要将此字符串转换为Vue中的对象
我尝试:
const helloWorld = new Vue({
el:'#helloVue',
data: {
dict:JSON.parse(JSON.stringify(document.getElementById('vuedata').innerHTML)),
},
delimiters: ['[[', ']]'],
})
但是当我需要Vue数据时,它会显示一个字符串,而不是一个对象。您可以直接在
数据中计算dict
值,但最好在计算中执行,如下所示:
computed: {
dict() {
return JSON.parse(JSON.stringify(document.getElementById('vuedata').innerHTML))
}
}
然后,您可以在模板中使用该值,就像您通常使用数据
属性一样:
<div>{{dict}}</div>
顺便说一下,data
属性应该返回值,如下所示:
data() {
return {
dict1: ...,
dict2: ...,
...
}
}
重复调用JSON.stringify
是多余的,因为innerHTML
返回一个字符串,要使JSON.parse
正常工作,您需要将单引号替换为双引号(例如使用str.replace(/'/g,“)
).Javascript没有dict,它有object和Map,请使用它来学习该语言的正确术语,这样您就不会混淆其他人,谢谢,我想我可以为您编辑问题,但是如果您以前没有编辑过问题,这是您的机会!
data() {
return {
dict1: ...,
dict2: ...,
...
}
}