vuejs JSON绑定
发布于 7 年前 作者 ouyangxuanyun 3550 次浏览 来自 问答

用vuejs绑定输入框的时候可以用v-model, 但是如果要绑定一个JSON 呢,这个JSON有很多层,应该怎么绑定呢? 比如说

var data=new Vue({ el:“body”, data:{ user:{ Info: {name:{firstname:’’, lastname: ‘’}, nickname:“tom1”}, Address:{tempadd:{a : ’ ', b: ’ '}, permanent: ‘c’} } } });

	HTML:
	<input type="text" v-model="user.Info.name.firstname"/>

<input type=“text” v-model=“user.Address.permanent”/>

像上面的这种多层嵌套我必须在data里面把字段user.Info.name都先声明出来,不然就会Cannot read property ‘firstname’ of undefined(…). 有没有什么方法可以不把所有字段都声明出来? 想动态添加字段,比如我的第一个输入框没输入的话就没有firtname字段,只有输入的时候才有nam下的firstname 字段,有什么方法吗? 听说可以用vuex,但是vuex不是状态管理的么,怎么绑定JSON呢?

2 回复

既然是这样 为什么不直接用v-for动态创建input呢

vuex只是多组建共享状态 你这个更多的是设计思路

回到顶部