关键点在这里JSON.stringify(mock,null,4).toString()有格式化的作用,v-model以后取到的是字符串,所有都得转成数组结构。
<div id&#61;"app"><div class&#61;"container"><div class&#61;"fl" style&#61;"width:50%"><textarea class&#61;"jsonBox" id&#61;"jsonBox" v-model&#61;"model">textarea>div><div class&#61;"formCreate fr" id&#61;"formCreate" style&#61;"width:50%">div><button &#64;click&#61;"markHtml">生成htmlbutton>div>
div>
<script>let mock &#61; [{type:"input",title:"商品名称",field:"goods_name",value:"商品名称",props: {"type": "text", "clearable":false, "disabled": false, "readonly": false, "rows": 4, "autosize": false, "number": false, "autofocus": false, "autocomplete": "off", "placeholder": "请输入商品名称", "size": "default", "spellcheck": false, "required":false,}}];vm &#61; new Vue({el:&#39;#app&#39;,data:{formData:{},model:&#39;&#39;},computed:{mocks(){return JSON.stringify(mock,null,4).toString() }},methods:{markHtml(){var model &#61; JSON.parse(this.model); window.formData &#61; {};let root &#61; document.getElementById(&#39;formCreate&#39;);$f &#61; this.$formCreate(model,{el:root,});}}});
script>
var arr &#61; [1,2,3,4,5];
JSON.stringify(arr).toString();
var jsonStr &#61; JSON.stringify(arr).toString();
var v &#61; JSON.parse(jsonStr);
console.log(v[1], v[2]);