vue-json-editor json编辑器的使用及重复调用时遇到的一个小坑


1、安装插件

npm install vue-json-editor --save

2、使用

 1 <div class = "routeManagement">
 2       <vue-json-editor  3         v-model="prersonForm.data"
 4  :showBtns="true" // 是否显示保存按钮
 5  :mode="'code'" //默认显示编辑模式
 6  lang="zh" // 显示中文,默认英文
 7  :key="keys"
 8  @json-change="onJsonChange"
 9  @json-save="onJsonSave"/>
10     </div>
11 
12 <script>
13  import vueJsonEditor from 'vue-json-editor'; 14  data(){ 15        return { 16  prersonForm: { 17  formModule: 1, 18  data: null, 19  }, 20  } 21  } 22  components: { 23  vueJsonEditor 24  }, 25     
26  methods: { 27  onJsonChange (value) { 28  console.log('value:', value); 29  }, 30  onJsonSave (value) { 31  console.log('value:', value); 32  }, 33  onError (value) { 34  console.log('value:', value); 35  } 36  } 37 </script>

显示效果如下:

使用就是如上使用就可以了

 

 

在做的时候,遇到一个小问题就是,我是有几个地方修改的时候,都会调用到这个JSON编辑器,每次传进来的内容都不一样,不修改的时候,点保存,onJsonSave传进来的value永远是第一次传进来的内容。我的理解是,编辑器没有重新初始内容导致的。所在我就加了一个key,如果key有变化的时候就重新初始一次,这样子就保证了每次onJsonSave传进来的value的内容都是正确的。

 

样式,可以自行调整

 

.routeManagement{
  width:98%;
  margin:16px auto;
  /deep/.jsoneditor-vue{
    height:500px;
  }
  /deep/.json-save-btn{
    margin-top: 10px;
    cursor: pointer;
    width: 100px;
    line-height: 30px;
    font-size: 14px;
  }
}

  

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM