vue项目中使用AvueJs的详细教程

目录
  • 一、背景
  • 二、项目中的运用
    • 1、引入
    • 2、table(avue-crud)的使用
  • 三、使用想法

Avue是基于Vue.js和element的快速开发框架 它的核心是数据驱动UI的思想,让我们从繁琐的crud开发中解脱出来,它的写法类似easyUI,但是写起来比easyui更容易,因为它是基础数据双向绑定以及其他vue的特性。同时不知局限于crud,它还有我们经常用的一些组件例如,表单,数据展示卡,人物展示卡等,更多的组件还在开发。

Avue.js是基于现有的element-ui库进行的二次封装,简化一些繁琐的操作,核心理念为数据驱动视图,主要的组件库针对table表格和form表单场景,同时衍生出更多企业常用的组件,达到高复用,容易维护和扩展的框架,同时内置了丰富了数据展示组件,让开发变得更加容易。
官网地址:https://avuejs.com/
github地址:https://github.com/nmxiaowei/avue

一、背景

最近公司在开发云运维相关的系统,前端采用的技术框架是vue-cli3+vuex+aixos+element +avue。起初是没有想到用Avuejs,毕竟使用element-ui也适合大部分场景开发。随着开发进度的进行,发现element对table的封装不够,数据展示方面也没有那么优秀。本来是打算自己封装table,此时突然想起,Avuejs其实也是对element的二次封装,特别是table模块和数据展示模块,恰好可以补足element这方面的短板。

想看avue的具体文档,请查看官网:Avue官网

二、项目中的运用

1、引入

vue-cli3脚手架创建的项目,都有一个src文件夹,在src下创建一个plugins文件夹,专门用于引入项目需要的插件,比如element、avue等。主要是减少main.js的代码,简化代码结构,便于管理插件。

先npm下载依赖:

npm i @smallwei/avue --save

在plugins文件夹下面创建一个js文件:avue.js:

import Vue from 'vue'
import Avue from '@smallwei/avue'
import '@smallwei/avue/lib/index.css'
Vue.use(Avue)

然后再主入口文件main.js引入

import './plugins/avue'

然后就可以进行全局使用了

2、table(avue-crud)的使用

以下是代码展示:

先在template中贴入代码:

<avue-crud
      ref="crud"
      :data="data"
      :option="option"
      :page.sync="page"
      :table-loading="loading"
      @size-change="sizeChange"
      @current-change="currentChange"
    >
      <template slot="menu" slot-scope="scope">
        <el-button
          size="mini"
          @click.native="update(scope.row)"
        >编辑
        </el-button>
        <el-button
          size="mini"
          type="danger"
          @click.native="remove(scope.row)"
        >删除
        </el-button>
      </template>
    </avue-crud>

然后在data中添加配置项:

data() {
    return {
      page: {
        pageSizes: [10, 20, 30, 40], // 默认
        currentPage: 1,
        total: 0,
        pageSize: 10
      },
      data: [],
      loading: false,
      option: {
        emptyText: '暂无数据',
        columnBtn: false,//删掉自带的列显隐按钮
        refreshBtn: false,//删掉自带的刷新按钮
        addBtn: false,// 删掉自带的添加按钮
        delBtn: false,// 删掉自带的删除按钮
        editBtn: false,// 删掉自带的编辑按钮
        border: true,
        stripe: true,
        selection: false,
        align: 'center',
        menuAlign: 'center',
        menuWidth: 200,
        column: [
          {
            label: '角色名称',
            prop: 'name'
          },
          {
            label: '说明',
            prop: 'desc'
          }
        ]
      }
    }
  }

想要看更多的参数意思和配置,可以登录avue的官网查看。之所以将一些自带的按钮和查询框框删掉,是因为这些要自己根据实际需求,进行自定义。还有就是,始终觉得,一个框架封装的越完善,其实对开发者越不利,因为这样表示开发者自己发挥的空间变小,同时也代表适用范围变小了。在处理实际问题过程中,往往是要灵活多变的。

以下是项目效果图,数据变多时,会显示分页按钮:

三、使用想法

市面上有很多封装好的插件,比如boostrap-vue,iview等,这些都只是工具。基础还是对es6的掌握和vue的掌握。在开发的过程中,可以根据自己现有的基础,决定使用哪个工具,来提高自己的开发效率。之所以选择auvejs,是因为项目本身用了element-ui,avue是对element的二次封装,并且对table和数据展示的组件封装的很好,省去了自己手动封装的时间。如果项目开发时间充足,建议可以自己封装,往往更适合项目。

到此这篇关于vue项目中使用AvueJs的文章就介绍到这了,更多相关vue 使用AvueJs内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Avue和Element-UI动态三级表头的实现

    目录 Avue配置方式 Element-UI三级表头动态写法 需求场景: 业务方希望有表格可以体现员工的考勤信息,要具体到上午下午,统计司机上下班打卡所产生的数据.产品提出想做成三级表头根据页面查询条件的年月去动态生成表格的表头.三级分别是月份日期,对应的星期,以及每天的上午以及下午. 效果如下: Avue配置方式 通过对avue-crud组件的option的配置如下: { label: `${$this.month}月${$this.dateList[0].ri}日`, // 月份 heade

  • Avue 组件库的使用初体验

    目录 1. 使用的初体验 2. 不好的地方 1. 使用的初体验 今天给大家讲一下我最近发现的比较冷门的一个组件库,但是功能还是蛮多,这里就给大家介绍一下 , 网址也给大家放在这里 Avue 这里我大概介绍一下,因为我这里也就是做了几个dome,并没有拿到实际的项目中,但是,却发现的一些好的地方,跟需要闭坑的地方 这里的组件超级多,而且很丰富 ,下面就是签名啊 还可以调用我的摄像头 图片的裁剪 2. 不好的地方 发现这边的文档写的相当的不全面,例如我上面的那个签名的介绍 <avue-sign re

  • avue实现自定义搜索栏及清空搜索事件的实践

    目录 1.自定义搜索栏内容 2.自定义搜索按钮 对搜索栏进行自定义,并通过按钮实现折叠搜索栏效果.自定义效果如下: 折叠前: 折叠后: 1.自定义搜索栏内容 其实也简单,只要在对应的vue文件中\src\views\admin\sysxxfsjl.vue对template 设置slot-scope="scope"和 slot="search"属性即可自定义搜索栏内容: <template slot-scope="scope" slot=&q

  • 在Vue中使用Avue、配置过程及实际应用小结

    目录 1.使用Avue的原因 2.Avue的官网 3.安装使用 3.1 安装 3.2 在main.js中引入 4 使用Avue组件库 4.1 基本样式 4.2 实际应用 4.3 效果 在新项目中用到一个新的小玩意.还挺不错的.立马安装使用到自己的项目中.哈哈哈 1.使用Avue的原因 在项目中遇到通过点击加号实现输入框的增加.以及对该输入框的输入内容进行验证.有感而发 2.Avue的官网 官网地址:https://avuejs.com/ 3.安装使用 可以直接根据官网的教程来 以下介绍我成功安装

  • avue-crud多级复杂的动态表头的实现示例

    目录 前言 后台数据拼接 前台数据展示 页面效果展示 Avue.js 是基于现有的element-ui库进行的二次封装,从而简化一些繁琐的操作,核心理念为数据驱动视图,主要的组件库针对table表格和form表单场景,同时衍生出更多企业常用的组件,达到高复用,容易维护和扩展的框架,同时内置了丰富了数据展示组件,让开发变得更加容易. 前言 在实际开发过程,需要多级复杂的动态表头,表头中的内容是动态填充的.以下是avuejs官网提供的负责表头样式,因此我后台返回的数据,需要拼接avue-crud中的

  • vue项目中使用AvueJs的详细教程

    目录 一.背景 二.项目中的运用 1.引入 2.table(avue-crud)的使用 三.使用想法 Avue是基于Vue.js和element的快速开发框架 它的核心是数据驱动UI的思想,让我们从繁琐的crud开发中解脱出来,它的写法类似easyUI,但是写起来比easyui更容易,因为它是基础数据双向绑定以及其他vue的特性.同时不知局限于crud,它还有我们经常用的一些组件例如,表单,数据展示卡,人物展示卡等,更多的组件还在开发. Avue.js是基于现有的element-ui库进行的二次

  • vue项目中添加electron的详细代码

    1.在package.json中添加 "main": "electron.js", 在 "scripts": {添加: "package": "electron-packager ./ appName --overwrite" 在"dependencies": {添加: "electron-share-memory": "^1.0.1", &quo

  • Vue项目中接口调用的详细讲解

    在企业开发过程中,往往有着明确的前后端的分工,前端负责接收.使用接口,后端负责编写.处理接口. 对于前端如何使用接口,今天在Vue中进行讲解. 一个项目往往由这几个部分组成. 其中在src文件夹中, ,有这么些内容. 我们常常把接口文件,新建一个文件夹在src下,命名为api,api内的文件便是接口文件. 通常把后端的接口写在api文件夹下,自己命名为xxx.js // 登录 export function login(data) { return request({ url: '/api/co

  • vue项目中使用ts(typescript)入门教程

    目录 1.引入Typescript 2.配置文件webpack配置 3.让项目识别.ts 4.vue组件的编写 data()中定义数据 props传值 完整代码案例 最近项目需要将原vue项目结合ts的使用进行改造,这个后面应该是中大型项目的发展趋势,看到一篇不错的入门教程,结合它并进行了一点拓展记录之.本文从安装到vue组件编写进行了说明,适合入门. 1.引入Typescript npm install vue-class-component vue-property-decorator --

  • 可能是vue中使用axios最详细教程

    目录 安装: 较科学的封装好的axios:(new-axios.js) main.js 引入,添加到vue原型 使用 以下步骤一般不需要 总结 前提条件:vue-cli 项目 安装: npm axios from 'axios' 较科学的封装好的axios:(new-axios.js) import axios from 'axios' import { Notify } from 'vant'; // import Vue from 'vue' // import store from '@/

  • 在Vue项目中引入腾讯验证码服务的教程

    什么是腾讯验证码?它长这个样子--:point_down: 最近公司项目要求引入腾讯云验证,要求是这样的: 为了防止别人恶意刷短信验证码,当用户短时间内多次获取验证码的时候,需要调用腾讯验证码,验证成功后会继续自动发送验证码 ,刚开始的我听的一脸蒙蔽,网上搜索也没有多少相关的文章,然而现在我接通啦,发现是很简单点事(或许就是因为太简单了所以没有人写2333-) 不多BB,开始吧! 先看文档的接口调用流程: (文档地址: cloud.tencent.com/document/pr- ) 总共分成几

  • animate.css在vue项目中的使用教程

    在vue项目中使用动画其实有多种方式,可以使用vue中的过渡transition,可以使用animate动画与transition配合使用,也可以单独使用animate动画库(详情可见vue官网-过渡:过渡),下面我们开始介绍在vue中单独使用animate动画,其实也非常简单,两步留可以实现: 第一步:安装: 在命令行中执行:npm install animate.css --save 第二步:引入及使用: main.js中: import animated from 'animate.css

  • vue项目中使用Svg的方法

    github demo: github地址 闲聊背景 本文主要以 vue-cli3 搭建的项目为例,来聊一下如何在项目中更优雅的使用 svg . 众所周知, vue-cli3 已经推出很长一段时间了,大家可以感受一下 vue-cli3 带来的零配置体验.But,也相应带来了一些弊端,就是如归需要修改默认的 loader 时,会比较麻烦. 们接下来主要使用的就是上文中提到的 svg 的 use ,先上一张 vue-cli3 搭建的项目的目录,可以看到根目录下只保留了 public/ 以及 src/

  • vue+koa2搭建mock数据环境的详细教程

    前段时间写了一篇前端vue项目实现mock数据方式的文章,主要是在vue项目里使用mock数据,数据和项目耦合在一起,不太优雅,作为一个有追求的前端,怎么能容忍这种方法呢?特以此篇,记录利用koa2搭建服务端,提供mock数据的方法. 初始化vue项目 这里以vue项目为主,当然别的类型项目依然可以使用这种mock数据的方式. vue create vue-koa2-demo 前提是安装了vue-cli的脚手架,我电脑安装的是vue-cli3的版本.按照要求一步一步选择后,记得选择安装vuex,

  • 在vue项目中安装使用Mint-UI的方法

    一.Mint UI 是 由饿了么前端团队推出的 一个基于 Vue.js 的移动端组件库,具有以下特性: 使用文档: http://mint-ui.github.io/#!/zh-cn Mint UI 包含丰富的 CSS 和 JS 组件,能够满足日常的移动端开发需要.通过它,可以快速构建出风格统一的页面,提升开发效率. 真正意义上的按需加载组件.可以只加载声明过的组件及其样式文件,无需再纠结文件体积过大. 考虑到移动端的性能门槛,Mint UI 采用 CSS3 处理各种动效,避免浏览器进行不必要的

随机推荐