1
0
mirror of https://github.com/sahadev/vue-component-creater-ui.git synced 2025-06-07 21:54:05 +08:00

update: 消除当下运行时警告

This commit is contained in:
shangbin 2021-12-06 14:13:00 +08:00
parent d6f575c503
commit 1f52b5da21
6 changed files with 94 additions and 100 deletions

160
package-lock.json generated
View File

@ -1949,6 +1949,44 @@
"webpack-merge": "^4.2.2" "webpack-merge": "^4.2.2"
}, },
"dependencies": { "dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://r.cnpmjs.org/ansi-styles/download/ansi-styles-4.3.0.tgz",
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.1.2",
"resolved": "https://r.cnpmjs.org/chalk/download/chalk-4.1.2.tgz",
"integrity": "sha1-qsTit3NKdAhnrrFr8CqtVWoeegE=",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://r.cnpmjs.org/color-convert/download/color-convert-2.0.1.tgz",
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://r.cnpmjs.org/color-name/download/color-name-1.1.4.tgz",
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
"dev": true,
"optional": true
},
"fs-extra": { "fs-extra": {
"version": "7.0.1", "version": "7.0.1",
"resolved": "https://r.cnpmjs.org/fs-extra/download/fs-extra-7.0.1.tgz", "resolved": "https://r.cnpmjs.org/fs-extra/download/fs-extra-7.0.1.tgz",
@ -1960,6 +1998,13 @@
"universalify": "^0.1.0" "universalify": "^0.1.0"
} }
}, },
"has-flag": {
"version": "4.0.0",
"resolved": "https://r.cnpmjs.org/has-flag/download/has-flag-4.0.0.tgz",
"integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
"dev": true,
"optional": true
},
"jsonfile": { "jsonfile": {
"version": "4.0.0", "version": "4.0.0",
"resolved": "https://r.cnpmjs.org/jsonfile/download/jsonfile-4.0.0.tgz", "resolved": "https://r.cnpmjs.org/jsonfile/download/jsonfile-4.0.0.tgz",
@ -1969,6 +2014,18 @@
"graceful-fs": "^4.1.6" "graceful-fs": "^4.1.6"
} }
}, },
"loader-utils": {
"version": "2.0.2",
"resolved": "https://r.cnpmjs.org/loader-utils/download/loader-utils-2.0.2.tgz",
"integrity": "sha1-1uO0+4GHByGuTghoqxHdY4NowSk=",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"ssri": { "ssri": {
"version": "8.0.1", "version": "8.0.1",
"resolved": "https://r.cnpmjs.org/ssri/download/ssri-8.0.1.tgz", "resolved": "https://r.cnpmjs.org/ssri/download/ssri-8.0.1.tgz",
@ -1978,11 +2035,33 @@
"minipass": "^3.1.1" "minipass": "^3.1.1"
} }
}, },
"supports-color": {
"version": "7.2.0",
"resolved": "https://r.cnpmjs.org/supports-color/download/supports-color-7.2.0.tgz",
"integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
},
"universalify": { "universalify": {
"version": "0.1.2", "version": "0.1.2",
"resolved": "https://r.cnpmjs.org/universalify/download/universalify-0.1.2.tgz", "resolved": "https://r.cnpmjs.org/universalify/download/universalify-0.1.2.tgz",
"integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=", "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=",
"dev": true "dev": true
},
"vue-loader-v16": {
"version": "npm:vue-loader@16.8.3",
"resolved": "https://r.cnpmjs.org/vue-loader/download/vue-loader-16.8.3.tgz",
"integrity": "sha1-1D5nXe9bqTRdbH8FkUwT2GGZcIc=",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
}
} }
} }
}, },
@ -13213,87 +13292,6 @@
} }
} }
}, },
"vue-loader-v16": {
"version": "npm:vue-loader@16.8.3",
"resolved": "https://r.cnpmjs.org/vue-loader/download/vue-loader-16.8.3.tgz",
"integrity": "sha1-1D5nXe9bqTRdbH8FkUwT2GGZcIc=",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://r.cnpmjs.org/ansi-styles/download/ansi-styles-4.3.0.tgz",
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.1.2",
"resolved": "https://r.cnpmjs.org/chalk/download/chalk-4.1.2.tgz",
"integrity": "sha1-qsTit3NKdAhnrrFr8CqtVWoeegE=",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://r.cnpmjs.org/color-convert/download/color-convert-2.0.1.tgz",
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://r.cnpmjs.org/color-name/download/color-name-1.1.4.tgz",
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
"dev": true,
"optional": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://r.cnpmjs.org/has-flag/download/has-flag-4.0.0.tgz",
"integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
"dev": true,
"optional": true
},
"loader-utils": {
"version": "2.0.2",
"resolved": "https://r.cnpmjs.org/loader-utils/download/loader-utils-2.0.2.tgz",
"integrity": "sha1-1uO0+4GHByGuTghoqxHdY4NowSk=",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://r.cnpmjs.org/supports-color/download/supports-color-7.2.0.tgz",
"integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
}
}
},
"vue-nestable": { "vue-nestable": {
"version": "2.6.0", "version": "2.6.0",
"resolved": "https://r.cnpmjs.org/vue-nestable/download/vue-nestable-2.6.0.tgz", "resolved": "https://r.cnpmjs.org/vue-nestable/download/vue-nestable-2.6.0.tgz",

View File

@ -38,14 +38,12 @@
<el-tooltip effect="dark" content="查看实时代码" placement="top-start"> <el-tooltip effect="dark" content="查看实时代码" placement="top-start">
<img class="round-icon" :src="iconCode" alt="" @click="codeDialogVisible = true"> <img class="round-icon" :src="iconCode" alt="" @click="codeDialogVisible = true">
</el-tooltip> </el-tooltip>
<el-tooltip effect="dark" content="清空当前编辑内容" placement="top-start">
<el-popconfirm confirmButtonText="确认" cancelButtonText="点错了" icon="el-icon-info" iconColor="red" <el-popconfirm confirmButtonText="确认" cancelButtonText="点错了" icon="el-icon-info" iconColor="red"
title="点我将清空所有编辑的内容, 确认吗?" @onConfirm="clear"> title="点我将清空所有编辑的内容, 确认吗?" @confirm="clear">
<template #reference> <template #reference>
<img class="round-icon" :src="iconClear" alt=""> <img class="round-icon" :src="iconClear" alt="">
</template> </template>
</el-popconfirm> </el-popconfirm>
</el-tooltip>
</div> </div>
<div> <div>

View File

@ -12,7 +12,7 @@
<el-col :span="16" style="height: 100%;"> <el-col :span="16" style="height: 100%;">
<div style="overflow: scroll;height:100%; margin: 0 20px;padding: 10px;"> <div style="overflow: scroll;height:100%; margin: 0 20px;padding: 10px;">
<vue-nestable v-model="treeData" @change="onLevelChange"> <!-- <vue-nestable v-model="treeData" @change="onLevelChange">
<template v-slot="{ item }"> <template v-slot="{ item }">
<vue-nestable-handle :item="item"> <vue-nestable-handle :item="item">
<i class="el-icon-rank icon-s"></i> <i class="el-icon-rank icon-s"></i>
@ -24,7 +24,7 @@
<template v-slot:placeholder> <template v-slot:placeholder>
<div><b>The editor is empty.</b></div> <div><b>The editor is empty.</b></div>
</template> </template>
</vue-nestable> </vue-nestable> -->
</div> </div>
</el-col> </el-col>
@ -44,14 +44,15 @@
import "./halower-tree.min.css"; import "./halower-tree.min.css";
import "@/assets/nestable.css" import "@/assets/nestable.css"
import { isObject, getRawComponentKey, getRawComponentContent } from "@/utils/common"; import { isObject, getRawComponentKey, getRawComponentContent } from "@/utils/common";
import { VueNestable, VueNestableHandle } from 'vue-nestable'; // import { VueNestable, VueNestableHandle } from 'vue-nestable';
export default { export default {
props: ['visible'], props: ['visible'],
emits: ['codeRefresh', 'onLevelChange', 'remove', 'save', 'update:visible'],
components: { components: {
AttributeInput: resolve => { require(["./AttributeInput"], resolve) }, AttributeInput: resolve => { require(["./AttributeInput"], resolve) },
VueNestable, // VueNestable,
VueNestableHandle // VueNestableHandle
}, },
data() { data() {

View File

@ -18,6 +18,7 @@ import dedent from 'dedent'
export default { export default {
props: ['codeDialogVisible'], props: ['codeDialogVisible'],
emits: ['saveJSCode'],
components: { components: {
// CodeEditor // CodeEditor
}, },

View File

@ -20,6 +20,7 @@ import { ergodic, findAObject } from '../utils/common';
export default { export default {
props: ['vueDialogVisible'], props: ['vueDialogVisible'],
emits: ['codeParseSucess', 'update:vueDialogVisible'],
components: { components: {
CodeEditor CodeEditor
}, },

View File

@ -64,13 +64,8 @@ export class MainPanelProvider {
let newScript = script.content.replace(/\s*export default\s*/, "") let newScript = script.content.replace(/\s*export default\s*/, "")
const componentOptions = (new Function(`return ${newScript}`))(); const componentOptions = (new Function(`return ${newScript}`))();
const render = compile(template.content);
componentOptions.render = function () { componentOptions.template = template.content;
const rootVNode = render.apply(this, arguments);
return rootVNode;
};
// componentOptions.staticRenderFns = render.staticRenderFns;
// 渲染当前代码 // 渲染当前代码
createBaseApp(componentOptions).mount(readyForMoutedElement); createBaseApp(componentOptions).mount(readyForMoutedElement);