Skip to content

Commit

Permalink
fix: 修复[email protected]版本antd组件无法注册问题
Browse files Browse the repository at this point in the history
  • Loading branch information
Kchengz committed Feb 17, 2023
1 parent 99f8d86 commit b7b3441
Show file tree
Hide file tree
Showing 8 changed files with 10,430 additions and 38 deletions.
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,11 @@ yarn add [email protected]
// 在main.js引入

// 注:useComponents 需放最上面,优先注册懒加载组件
import 'k-form-design/packages/core/useComponents'
import { useAntd } from 'k-form-design/packages/core/useComponents'
import KFormDesign from 'k-form-design/packages/use.js'
import 'k-form-design/lib/k-form-design.css'

useAntd(Vue)
Vue.use(KFormDesign)
```

Expand Down
7 changes: 4 additions & 3 deletions docs/zh-cn/guide/start.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,19 +51,20 @@ main.js引入
// 在main.js引入

// 注:useComponents 需放最上面,优先注册懒加载组件
import 'k-form-design/packages/core/useComponents'
import { useAntd } from 'k-form-design/packages/core/useComponents'
import KFormDesign from 'k-form-design/packages/use.js'
import 'k-form-design/lib/k-form-design.css'

useAntd(Vue)
Vue.use(KFormDesign)
```
以上代码便完整引入 k-form-design,组件为懒加载方式,并不会一次性加载所有组件

如果您不想使用懒加载的方式使用preUseComponents替换useComponents文件,就可以切换到预加载组件的方式

```javascript
- import 'k-form-design/packages/core/useComponents'
+ import 'k-form-design/packages/core/preUseComponents'
- import { useAntd } from 'k-form-design/packages/core/useComponents'
+ import { useAntd } from 'k-form-design/packages/core/preUseComponents'
```


Expand Down
3 changes: 2 additions & 1 deletion examples/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import router from "./router/";
// 预加载组件
// import "../packages/core/preUseComponents";
// 懒加载组件
import "../packages/core/useComponents";
import { useAntd } from "../packages/core/useComponents";
import { nodeSchema } from "../packages/mini";
import KFormDesign from "../packages/use";

Expand Down Expand Up @@ -62,6 +62,7 @@ nodeSchema.addSchemaGroup({
});

Vue.use(KFormDesign);
useAntd(Vue);
// KFormDesign.setFormBuildConfig({
// dynamicData: {
// test: [
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "k-form-design",
"version": "3.8.15",
"version": "3.8.16",
"private": false,
"description": "基于vue、ant-design-vue的表单设计器,可视化开发表单",
"license": "MIT",
Expand Down
35 changes: 20 additions & 15 deletions packages/core/preUseAntd.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
/**
* 预加载antd组件
*/
import Vue from "vue";
import { pluginManager } from "../utils/index";
import {
ConfigProvider,
Expand Down Expand Up @@ -58,17 +57,23 @@ pluginManager.addComponent("monthPicker", DatePicker.MonthPicker);
pluginManager.addComponent("upload", Upload);
pluginManager.addComponent("uploadDragger", Upload.Dragger);

Vue.use(ConfigProvider);
Vue.use(Tooltip);
Vue.use(Empty);
Vue.use(FormModel);
Vue.use(Collapse);
Vue.use(Layout);
Vue.use(Card);
Vue.use(Form);
Vue.use(Row);
Vue.use(Col);
Vue.use(Modal);
Vue.use(Table);
Vue.use(Tabs);
Vue.use(Icon);
/**
* 注册Antd组件
* @param {*} App
*/
export function useAntd(App) {
App.use(ConfigProvider);
App.use(Tooltip);
App.use(Empty);
App.use(FormModel);
App.use(Collapse);
App.use(Layout);
App.use(Card);
App.use(Form);
App.use(Row);
App.use(Col);
App.use(Modal);
App.use(Table);
App.use(Tabs);
App.use(Icon);
}
35 changes: 20 additions & 15 deletions packages/core/useComponents.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
*
* 当需要更多组件依赖时,在该文件加入即可
*/
import Vue from "vue";
import { pluginManager } from "../utils/index";
import {
ConfigProvider,
Expand Down Expand Up @@ -133,17 +132,23 @@ pluginManager.addComponent(
async () => (await import("vue-codemirror-lite"))["codemirror"]
);

Vue.use(ConfigProvider);
Vue.use(Tooltip);
Vue.use(Empty);
Vue.use(FormModel);
Vue.use(Collapse);
Vue.use(Layout);
Vue.use(Card);
Vue.use(Form);
Vue.use(Row);
Vue.use(Col);
Vue.use(Modal);
Vue.use(Table);
Vue.use(Tabs);
Vue.use(Icon);
/**
* 注册Antd组件
* @param {*} App
*/
export function useAntd(App) {
App.use(ConfigProvider);
App.use(Tooltip);
App.use(Empty);
App.use(FormModel);
App.use(Collapse);
App.use(Layout);
App.use(Card);
App.use(Form);
App.use(Row);
App.use(Col);
App.use(Modal);
App.use(Table);
App.use(Tabs);
App.use(Icon);
}
5 changes: 3 additions & 2 deletions packages/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,21 @@
import "../styles/form-design.less";
// 导入antD样式
import "./core/antdStyle";
import Vue from "vue";

// 导出本地iconfont
import "../static/icons/iconfont";
import { pluginManager, nodeSchema } from "./utils/index";
// 导入ant组件
import "./core/useComponents";
import { useAntd } from "./core/useComponents";

// 导入单个组件
import KFormDesign from "./components/KFormDesign/index";
import KFormPreview from "./components/KFormPreview/index";
import KFormBuild from "./components/KFormBuild/index";
import KFormItem from "./components/KFormItem/index";
import { setFormDesignConfig, setFormBuildConfig } from "./mini";

useAntd(Vue);
const components = [KFormDesign, KFormBuild, KFormItem, KFormPreview];

const install = function(Vue) {
Expand Down
Loading

0 comments on commit b7b3441

Please sign in to comment.