整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          Vue.js的6個(gè)最佳表單生成器組件

          者:Creative Tim

          譯者:Echa攻城獅

          轉(zhuǎn)發(fā)鏈接:https://www.creative-tim.com/blog/web-design/top-form-generator-components-vuejs/

          前言

          Vue.js作為一種靈活的技術(shù)而越來越流行,并且可以幫助創(chuàng)建靈活而又現(xiàn)代的應(yīng)用程序而不浪費(fèi)資源。它的靈活性,可伸縮性,方便的約定,尺寸效率和漸進(jìn)性使該框架在其他方面脫穎而出。 如果要構(gòu)建小型應(yīng)用程序或大型應(yīng)用程序,則表單輸入是收集相關(guān)用戶數(shù)據(jù)的最佳來源。表單生成器組件提供了重用捕獲相似類型數(shù)據(jù)的表單的靈活性,從而確保您不違反DRY原則

          如果您不熟悉Vue.js,請(qǐng)嘗試將現(xiàn)有框架轉(zhuǎn)換為Vue.js或只是探索您的選擇,請(qǐng)繼續(xù)閱讀以找出Vue.js的前6個(gè)表單生成器組件,這些組件可以幫助您創(chuàng)建動(dòng)態(tài)且可自定義的表單輕松地。

          Vue.js表單生成器可幫助您快速而動(dòng)態(tài)地創(chuàng)建賬單,調(diào)查表,聯(lián)系表,調(diào)查表等,從而使開發(fā)變得更加容易和快捷。

          在探索適用于Vue.js的最佳表單生成器組件之前,請(qǐng)注意在PC中安裝Vue的前提條件。

          Vue的前提條件是什么?

          1. 您想要的IDE
          2. Node.js(最低節(jié)點(diǎn)v10x)
          3. 了解JavaScript和Vue的基本概念
          4. Vue CLI

          如何安裝Vue CLI?

          1.執(zhí)行命令:npm install @ vue / cli –g

          2.通過執(zhí)行以下命令來創(chuàng)建新的Vue項(xiàng)目:vue create <項(xiàng)目名稱>

          Vue.js的前6種表單生成器組件是什么?

          1. vue-form-generator

          vue-form-generator 是基于JSON模式的表單生成器組件,可幫助基于模式或數(shù)據(jù)模型創(chuàng)建響應(yīng)式表單。該生成器輕巧且可擴(kuò)展,并內(nèi)置了對(duì)自定義樣式的支持。

          特征:

          • 該表單生成器擁有21種字段類型。
          • 其樣式易于定制。
          • 它支持內(nèi)置的表單驗(yàn)證器。
          • 它是輕量級(jí)的。
          • 它是高度可擴(kuò)展的,并允許自定義字段擴(kuò)展。
          • 它支持多對(duì)象編輯。
          • 包括Bootstrap友好模板。
          • 支持分組字段。

          安裝:

          1.將目錄更改為項(xiàng)目cd <項(xiàng)目名稱>

          2.安裝vue-form-generator

          npm i vue-form-generator –save

          2. ncform

          ncform 由于其簡(jiǎn)單性和靈活性而成為Vue.js的另一個(gè)表單生成器組件。它是一個(gè)基于JSON的表單生成器,用于創(chuàng)建表單UI并僅使用配置來描述其交互。

          特征:

          • JSON數(shù)據(jù)結(jié)構(gòu)完整描述了UI及其交互行為。
          • 表單控件之間可以靈活地交互。
          • 它不需要復(fù)雜的驗(yàn)證邏輯即可在表單項(xiàng)之間創(chuàng)建交互。
          • ncform定義了一組標(biāo)準(zhǔn)組件,這些組件可以輕松滿足大約90%的表單開發(fā)需求,而無需擴(kuò)展。
          • 它擁有十多個(gè)常用的驗(yàn)證和確認(rèn)要求。
          • 驗(yàn)證規(guī)則和表單組件是高度可擴(kuò)展的。
          • 它提供了強(qiáng)大的控件交互功能,可以創(chuàng)建所需的確切形式。

          安裝:

          1.將目錄更改為項(xiàng)目cd <項(xiàng)目名稱>

          2.安裝ncform npm i @ ncform / ncform @ ncform / ncform-common –save

          npm i @ ncform / ncform-theme-elementui element-ui axios –保存

          3. vuetify-form-b?ase

          vuetify-form-b??ase 是另一個(gè)基于JSON的表單生成器,可幫助創(chuàng)建具有與數(shù)據(jù)相同結(jié)構(gòu)的架構(gòu)對(duì)象。由于它使用Vuetify框架來創(chuàng)建表單的布局和樣式,因此您需要安裝一個(gè)額外的軟件包才能使此生成器正常工作。

          要安裝Vuetify,請(qǐng)?jiān)诎惭bVue CLI之后執(zhí)行以下命令:

          vue添加vuetify

          Vuetify框架以其響應(yīng)式設(shè)計(jì),支持以及適合輕量級(jí)應(yīng)用程序的清晰,簡(jiǎn)約的用戶界面而聞名。

          特征:

          • 它根據(jù)您定義的架構(gòu)創(chuàng)建表單。
          • 如果未定義架構(gòu),它將自動(dòng)為數(shù)據(jù)類型'string','number'或'bool'生成架構(gòu)。
          • 它基于現(xiàn)有的模型對(duì)象創(chuàng)建一個(gè)完全可編輯的表單。
          • 它允許在使用相同模型對(duì)象的兩個(gè)或更多窗體之間進(jìn)行同步。
          • 表單的布局和功能是使用Schema-Object定義的,該對(duì)象具有與Model-Object相同的屬性結(jié)構(gòu)。
          • 它有助于創(chuàng)建具有所需事件的完全反應(yīng)形式。
          • 即使您有深層嵌套的Model-Object,它也不需要展平或修改數(shù)據(jù)表示。

          安裝:

          1.將目錄更改為項(xiàng)目cd <項(xiàng)目名稱>

          2.安裝vuetify-form-b??ase

          npm i vuetify-form-b??ase –save

          4. vue-form-json-schema

          vue-form-json-schema 是基于JSON模式的表單生成器,它不需要任何字段并且支持任何HTML元素或Vue組件。由于沒有預(yù)構(gòu)建的組件,因此您不必為每個(gè)組件的可用性而感到困惑,從而使開發(fā)更加容易。

          特征:

          • 表單布局與數(shù)據(jù)結(jié)構(gòu)無關(guān)。
          • 它允許使用發(fā)出事件的任何組件或元素(自定義或本機(jī))。
          • 它支持嵌套的表單字段,動(dòng)畫和表單驗(yàn)證。
          • 允許從后端加載表單。
          • 支持條件可見性。
          • 支持與Bootstrap類的集成,以實(shí)現(xiàn)不同設(shè)備的不同布局。

          安裝:

          1.將目錄更改為項(xiàng)目cd <項(xiàng)目名稱>

          2.在vue-form-json-schema –save

          npm i vue-form-json-schema –save

          5. vue-form-b??uilder

          vue-form-b??uilder是一個(gè)快速,簡(jiǎn)單但可擴(kuò)展的表單構(gòu)建器組件,支持拖放。由于開發(fā)中的代碼較少,因此拖放功能使維護(hù)更加容易。

          特征:

          • 高度可擴(kuò)展
          • 支持驗(yàn)證和自定義控制
          • 它具有可輕松配置的拖放功能以及控制設(shè)置。
          • 由于具有拖放功能,因此在開發(fā)中需要較少的編碼。
          • 包含各種API
          • 支持靜態(tài)和動(dòng)態(tài)形式的創(chuàng)建
          • 支持文本,數(shù)字,日期,時(shí)間輸入。
          • 在“折疊”和“選項(xiàng)卡”布局中可用。

          安裝:

          1.將目錄更改為項(xiàng)目cd <項(xiàng)目名稱>

          2.在vue-form-b??uilder –save

          npm i vue-form-builder –save

          6. vuetify-jsonschema-form

          vuetify-jsonschema-form還是Vue.js排名前六的表單生成器之一,后者基于帶注釋的JSON模式生成表單。該框架的缺點(diǎn)還在于需要安裝其他Vuetify軟件包。

          要安裝Vuetify,請(qǐng)?jiān)诎惭bVue CLI之后執(zhí)行以下命令:

          vue add vuetify由于此表單生成器基于Vuetify框架創(chuàng)建了表單的布局和結(jié)構(gòu),因此它繼承了框架的簡(jiǎn)約設(shè)計(jì),簡(jiǎn)單控制和響應(yīng)能力。最適合需要聲明性形式的應(yīng)用程序(例如通用admin UI形式)

          特征:

          • 支持所有基本數(shù)據(jù)類型。
          • 允許實(shí)現(xiàn)嵌套對(duì)象和嵌套數(shù)組。
          • 支持不同的顯示選項(xiàng)。
          • 支持簡(jiǎn)單的驗(yàn)證規(guī)則。
          • 允許使用插槽注入內(nèi)容。

          安裝:

          1.將目錄更改為項(xiàng)目 cd <項(xiàng)目名稱>

          2.安裝vue-form-b??uilder

          npm i json-schema-for-vuetify – –保存–

          最后的想法

          在幾乎所有基準(zhǔn)測(cè)試中,Vue.js的性能均優(yōu)于Angular和ReactJS。它很容易上手,并提供了許多很酷的功能,這些功能通過React樣式渲染支持組件樣式開發(fā)。

          推薦Vue學(xué)習(xí)資料文章:

          《從Vue源碼角度深挖Watch、Computed 》

          《Vue3全家桶 + Vite + TS + TSX嘗鮮,先人一步 》

          《精讀《Vue3.0 Function API》 》

          《手把手教你Electron + Vue實(shí)戰(zhàn)教程(六) 》

          《Vue中mixin怎么理解? 》

          《封裝一個(gè)精致vue視頻播放器組件》

          嘍,我是老魚,一名致力于在技術(shù)道路上的終身學(xué)習(xí)者、實(shí)踐者、分享者!

          IDEA 全稱IntelliJ IDEA,是用于java語言開發(fā)的集成環(huán)境(也可用于其他語言),IntelliJ在業(yè)界被公認(rèn)為最好的java開發(fā)工具之一。

          激活碼開源項(xiàng)目地址:https://gitee.com/yudu233/java-active

          Vuetify Form Base是一個(gè)基于模型的表單生成器,目的是提供一個(gè)工具,以便以較少的努力從任何模型數(shù)據(jù)生成可編輯的表單,即使模型是一個(gè)深度嵌套的對(duì)象。

          Vuetify Form Base作為Vue組件工作,可以很容易地集成到任何VUE項(xiàng)目中。

          安裝

          Npm

          npm i vuetify-form-base
          

          Yarn

          yarn add vuetify-form-base
          

          使用

          首先要在src/plugins/vuetify.js中引入所有必要的組件和指令。

          import Vue from 'vue';
          import Vuetify, {
              VRow,
              VCol,
              VTextField,
              VTooltip,
              VCheckbox,
              VSelect,
          } from 'vuetify/lib';
          import { Ripple, Intersect, Touch, Resize } from 'vuetify/lib/directives';
          Vue.use(Vuetify, {
              components: { VRow, VTooltip, VCol, VTextField, VCheckbox, VSelect },
              directives: { Ripple, Intersect, Touch, Resize },
          });
          export default new Vuetify({
              icons: {
                  iconfont: 'mdiSvg', // 'mdi' || 'mdiSvg' || 'md' || 'fa' || 'fa4' || 'faSvg'
              }
          });
          

          通過v-form-base組件使用:

          <v-form-base :model="myModel" :schema="mySchema" @input="handleInput" />
          

          Model 及 Schema

          Model: {
              name: 'base',
              details: {
                  one: ['a','b','c'],
                  two: { 
                      a:true, 
                      b:false 
                  }
              }
          }
          Schema: {
              name:'text',
              details: { 
                  one:{ type:'array' },
                  two: { 
                      a:'checkbox'  // shorthand for { type:'checkbox', label:'a']
                      b:'checkbox'  // shorthand for { type:'checkbox', label:'b']
                  }
              }
          }
          

          示例

          Github地址:https://github.com/wotamann/vuetify-form-base



          我是老魚,白天敲代碼,晚上搞自媒體。

          課程 | 陪跑 | 項(xiàng)目 | 副業(yè)咨詢

          天給大家推薦一款超逼格的Vue可拖拽表單設(shè)計(jì)器組件FormGenerator。

          form-generator 基于 Vue.js+ElementUI 高效表單設(shè)計(jì)組件,star高達(dá)1.7K+

          功能特點(diǎn)

          • 可視化設(shè)計(jì)表單
          • 一鍵生成原生的vue單頁(yè)表單代碼,保持100%拓展性
          • 在線編輯器修改生成的代碼,并實(shí)時(shí)預(yù)覽
          • 表單柵格化布局
          • 支持表單校驗(yàn)
          • 快速查閱組件的官方文檔

          vscode插件

          在上文的設(shè)計(jì)器的基礎(chǔ)上,封裝了一個(gè)vscode插件。突破網(wǎng)頁(yè)不能寫入文件的限制。

          請(qǐng)?jiān)趘scode中搜索 jakHuang 或 Form Generator Plugin

          安裝使用

          # 下載項(xiàng)目
          git clone https://github.com/JakHuang/form-generator.git
          
          # 進(jìn)入目錄
          cd form-generator
          
          # 安裝依賴
          npm install
          
          # 本地開發(fā)
          npm run dev
          
          # 構(gòu)建
          npm run build

          支持生成的代碼直接運(yùn)行在基于Element的vue項(xiàng)目中。也可導(dǎo)出JSON表單,使用配套的解析器將JSON解析成真實(shí)的表單。

          # 預(yù)覽地址
          https://mrhj.gitee.io/form-generator/
          
          # 倉(cāng)庫(kù)地址
          https://github.com/JakHuang/form-generator

          ok,就分享到這里。希望對(duì)大家有所幫助,歡迎一起交流討論!


          主站蜘蛛池模板: 色欲AV蜜臀一区二区三区| 国产午夜精品一区理论片| 一区二区三区四区精品视频| 在线观看日本亚洲一区| 中文字幕在线不卡一区二区| 麻豆国产在线不卡一区二区| 国模无码视频一区二区三区| 在线视频精品一区| 国产在线无码视频一区| 一区三区三区不卡| 精品aⅴ一区二区三区| 亚洲国产精品一区二区成人片国内| 美女一区二区三区| 色噜噜狠狠一区二区三区| 一本久久精品一区二区| 内射白浆一区二区在线观看| 日韩精品无码一区二区视频| 无码日韩精品一区二区三区免费| 亚洲日本精品一区二区| 国产精品无码一区二区在线观| 国产一区二区三区四| 久久精品一区二区东京热| 在线观看日本亚洲一区| 精品一区二区久久久久久久网站| 亚洲欧洲精品一区二区三区| 一区二区三区四区在线观看视频 | 国产伦精品一区二区三区免费迷| 国产av福利一区二区三巨 | 国产av福利一区二区三巨| 国产精品高清一区二区三区| 国产一区二区在线视频播放| 麻豆一区二区在我观看| 夜夜添无码一区二区三区| 国产精品高清一区二区人妖| 亚洲一区影音先锋色资源| 不卡无码人妻一区三区音频| 国产精品无码一区二区三区毛片 | 2021国产精品一区二区在线| 激情内射亚州一区二区三区爱妻| 无码少妇一区二区| 国产传媒一区二区三区呀|