{ "name": "@zmjs/form-design", "version": "0.1.16", "description": "表单设计器", "packageManager": "pnpm@6.32.3", "keywords": [ "form-design" ], "homepage": "https://github.com/zhiyuanzmj/form-design#readme", "bugs": { "url": "https://github.com/zhiyuanzmj/form-design/issues" }, "license": "MIT", "author": "zhiyuanzmj <260480378@qq.com>", "repository": { "type": "git", "url": "git+https://github.com/zhiyuanzmj/form-design.git" }, "funding": "https://github.com/sponsors/zhiyuanzmj", "main": "dist/index.umd.js", "module": "dist/index.es.js", "types": "dist/index.d.ts", "files": [ "dist" ], "dependencies": { "@vueuse/core": "^8.2.3", "ace-builds": "^1.4.14", "element-plus": "^2.1.10", "lodash-es": "^4.17.21", "prismjs": "^1.28.0", "vue": "^3.2.31", "vue-prism-editor": "^2.0.0-alpha.2", "vuedraggable": "^4.1.0" }, "devDependencies": { "@antfu/eslint-config": "^0.18.9", "@iconify/json": "^2.1.31", "@iconify/utils": "^1.0.32", "@types/lodash-es": "^4.17.6", "@types/node": "^17.0.23", "@types/prismjs": "^1.26.0", "@vitejs/plugin-vue": "^2.3.1", "@vitejs/plugin-vue-jsx": "^1.3.9", "eslint": "^8.12.0", "postcss": "^8.4.12", "postcss-html": "^1.3.0", "postcss-scss": "^4.0.3", "rollup": "^2.70.1", "sass": "^1.49.11", "stylelint": "^14.6.1", "stylelint-config-recess-order": "^3.0.0", "stylelint-config-standard-scss": "^3.0.0", "stylelint-config-standard-vue": "^1.0.0", "typescript": "^4.6.3", "unocss": "^0.30.11", "unplugin-auto-import": "^0.6.9", "unplugin-vue-components": "^0.18.5", "unplugin-vue-define-options": "^0.5.0", "vite": "^2.9.1", "vite-plugin-libcss": "^1.0.5", "vue-tsc": "^0.34.7" }, "engines": { "node": ">=14" }, "scripts": { "dev": "vue-tsc & vite build -w", "build": "vite build && vue-tsc", "play": "vite playground --open", "play:build": "vite build playground", "release": "npx bumpp --commit --tag --push" }, "readme": "# @zmjs/form-create\n\n基于 Vue3.0 + vite + element-plus + TS 的自定义表单生成器。\n\n![预览](https://user-images.githubusercontent.com/32807958/163714729-de4ce227-0651-4637-8cd0-b0491179c449.png)\n\n### 支持功能\n\n- 远端数据获取\n- 图片上传\n- 栅格布局\n- 生成 JSON\n\n### 演示地址\n\n[https://zmjs-form-design.netlify.app/](https://zmjs-form-design.netlify.app/)\n\n### npm\n\n[https://www.npmjs.com/package/@zmjs/form-design](https://www.npmjs.com/package/@zmjs/form-design)\n\n## 1 安装\n\n```shell\n$ pnpm install @zmjs/form-design\n```\n\n```shell\n$ yarn add @zmjs/form-design\n```\n### 示例\n\n**npm 引入**\n\n```javascript\nimport { createApp } from 'vue'\nimport App from './App.vue'\nimport {DesignForm} from '@zmjs/form-design'\n\ncreateApp(App)\n .use(DesignForm)\n .mount('#app')\n```\n## 2 组件说明\n\n### 表单设计器(DesignForm)\n\n#### 示例\n\n```html\n\n```\n\n#### API\n\n##### Props\n\n| 参数 | 说明 | 类型 | 默认值 |\n| :-----------: | :--------------------: | :-----: | :----: |\n| preview | 设计器预览操作按钮 | boolean | true |\n| generateJson | 设计器生成 Json 按钮 | boolean | true |\n| uploadJson | 设计器导入 JSON 按钮 | boolean | true |\n| clearable | 设计器清空按钮 | boolean | true |\n| basicFields | 设计器左侧基础字段配置 | array | - |\n| advanceFields | 设计器左侧高级字段配置 | array | - |\n| layoutFields | 设计器左侧布局字段配置 | array | - |\n\n##### 方法\n\n通过 ref 可以获取到实例并调用实例方法\n\n| 方法名 | 说明 | 参数 |\n| :---------------: | :--------------------------------: | :---------------------------: |\n| getJson() | 获取设计器配置的 JSON 数据 | - |\n| setJson(value) | 设置设计器的配置信息 | 通过 getJson 获取的数据 |\n| clear() | 清空设计器 | |\n\n### 表单生成器(GenerateForm)\n\n#### 示例\n\n```html\n\n```\n\n#### API\n\n##### Props\n\n| 参数 | 说明 | 类型 | 默认值 |\n| :------: | :-------------------------------------------: | :-----: | :----: |\n| data | 表单 json 配置数据(从表单设计器获取的 json) | object | - |\n| value | 表单数据(从表单生成器获取的 value) | object | - |\n| disabled | 是否禁用 | boolean | false |\n\n##### 方法\n\n通过 ref 可以获取到实例并调用实例方法\n\n| 方法名 | 说明 | 参数 |\n| :-------: | :--------------------------: | :---------------------: |\n| getData() | 获取表单数据(返回 Promise) | - |\n| reset() | 重置表单数据 | 通过 getJson 获取的数据 |\n\n## 3 功能说明\n\n### 远端数据\n\n单选框,多选框,下拉选择框、级联选择器等选择项需要通过数据生成,这时可以配置远端数据。\n\n设置远端方法地址与返回值。\n\n![](https://ftp.bmp.ovh/imgs/2021/04/63b3a638b9a9d251.png)\n\n### 文件上传\n\n填写服务器上传地址、参数名等配置信息。\n\n![](https://ftp.bmp.ovh/imgs/2021/04/91624bc0a32bad63.png)" }