Vue外掛-json編輯器
json編輯器- vue-json-edit
安裝方式
npm install vue-json-editor --save
新建vue檔案當做元件使用
<!--**
* 元件名稱 JsonEditor.vue
* @desc 元件描述 json編輯器
* @author 元件作者 midsummer
* @date 2020/12/23 18:12:19 -建立時間
* @param {Object} [title] - 引數說明
* @param {String} [columns] - 引數說明
* @example 呼叫示例
**-->
<template>
<vue-json-editor
v-model="modeJson"
:show-btns="false"
:mode="mode"
lang="zh"
@json-change="onJsonChange"
@json-save="onJsonSave"
@has-error="onError"
></vue-json-editor>
</template>
<script>
//這裡可以匯入其他檔案(比如:元件,工具js,第三方外掛js,json檔案,圖片檔案等等)
//例如:import 《元件名稱》 from '《元件路徑》';
import vueJsonEditor from "vue-json-editor";
export default {
name: "",
//import引入的元件需要注入到物件中才能使用
components: {
vueJsonEditor,
},
props: {
mode: String,
json: Object,
},
data() {
//這裡存放資料
return {
modeJson: this.json,
};
},
//監聽屬性 類似於data概念
computed: {},
//監控data中的資料變化
watch: {
json: {
handler(org) {
this.modeJson = org;
},
deep: true,
immediate: true,
},
},
beforeCreate() {}, //生命週期 - 建立之前
//生命週期 - 建立完成(可以訪問當前this例項)
created() {},
beforeMount() {}, //生命週期 - 掛載之前
//生命週期 - 掛載完成(可以訪問DOM元素)
mounted() {},
//方法集合
methods: {
onJsonChange(value) {
this.modeJson = value;
/* console.log("value:", value);
console.log("value:", this.modeJson); */
},
onJsonSave(value) {
console.log("value:", value);
console.log("value:", this.modeJson);
return this.modeJson;
},
onError(value) {
console.log("value:", value);
},
},
beforeUpdate() {}, //生命週期 - 更新之前
updated() {}, //生命週期 - 更新之後
beforeDestroy() {}, //生命週期 - 銷燬之前
destroyed() {}, //生命週期 - 銷燬完成
activated() {}, //如果頁面有keep-alive快取功能,這個函式會觸發
filters: {}, //過濾
};
</script>
<style lang="less" scoped>
//@import url(); 引入公共css類
/deep/div.jsoneditor-menu a.jsoneditor-poweredBy,
/deep/button.jsoneditor-modes.jsoneditor-separator {
display: none;
}
</style>
解釋
元件屬性
- v-model:繫結的json
- :show-btns: 是否顯示儲存按鈕,預設true
- :expandedOnStart: 在開始時展開,預設false
- :mode: 模式,預設樹模式
- :lang: 語言,預設英文,中文為zh
- @json-change: json編輯器內容改變時觸發
- @json-save: 點選儲存時觸發
- @has-error: 發生錯誤時觸發
隱藏部分樣式,自測
/deep/div.jsoneditor-menu a.jsoneditor-poweredBy,
/deep/button.jsoneditor-modes.jsoneditor-separator {
display: none;
}
注意
在作為元件使用時,json如果是父元件傳值過來最好是進行監聽,並且重新賦值
watch: {
json: {
handler(org) {
this.modeJson = org;
},
deep: true,
immediate: true,
},
},
相關文章
- Chrome外掛——Markdown編輯器Chrome
- Eplan外掛 - 自由文字編輯器
- [外掛擴充套件]前臺編輯器外掛Editor套件
- 輕量化web組態編輯器外掛Web
- 推薦一款基於Vue的Markdown編輯器外掛——mavonEditorVue
- vue-split-table【表格合併和編輯外掛】Vue
- [外掛擴充套件]後臺編輯器0.2套件
- vue外掛編寫小記Vue
- “改造” VS Code 編輯器,一起寫個外掛吧!
- vue-markdown編輯器Vue
- 搞了個OneThink的程式碼編輯外掛
- Lombok編譯器Maven外掛Lombok編譯Maven
- 用於CKeditor編輯器的視覺化數學公式外掛視覺化公式
- [外掛擴充套件]左右markdown編輯器0.2(更新同步預覽)套件
- chrome瀏覽器 json外掛【WEB前端助手】Chrome瀏覽器JSONWeb前端
- ExtJS的grid行編輯外掛事件觸發JS事件
- ue編輯舊版本的外掛,簡單可用。
- DxO Nik Collection照片編輯外掛套件Mac/Windows套件MacWindows
- vue外掛Vue
- vue 富文字編輯器 vue-quill-editorVueUI
- AE外掛:Bodymovin(AE動畫匯出json外掛)動畫JSON
- json-schema 視覺化編輯器釋出了JSON視覺化
- Chrome安裝json view外掛ChromeJSONView
- vue2+editor 編輯器選型Vue
- 部落格園使用VSCode 外掛編輯博文記錄VSCode
- PyCharm編輯器結合Black外掛,輕鬆實現Python程式碼格式化PyCharmPython
- egg外掛編寫
- 編寫node 外掛
- eggjs外掛編寫JS
- 編寫jq外掛
- Sublime裝vue外掛Vue
- [提問交流]onethink 快速建立外掛後 後臺編輯資料時提示外掛不存在
- 九、Vue+Element使用富文字編輯器Vue
- 滴滴開源 DroidAssist : 輕量級 Android 位元組碼編輯外掛Android
- vue專案中富文字編輯器踩坑之旅Vue
- vue輪播圖外掛Vue
- Vue-外掛開發Vue
- Vue-router外掛使用Vue