vue-elemnt-admin源码学习
vue-elemnt-admin源码学习
vue-element-admin是一个基于vue,element-ui的集成的管理后台。它的安装部分就不说了,按照官网的步骤一步步就可以执行了。
https://panjiachen.github.io/vue-element-admin-site/zh/
单元测试
我们可以看到vue-element-admin的单元测试是使用jtest.config.js来进行测试
vue和jtest的结合就是和官网的一样:https://cn.vuejs.org/v2/guide/unit-testing.html
jtest的官网:https://github.com/facebook/jest#getting-started
我们可以看到,tests文件夹中
jtest对应的文件有jtest.config.js,这里面的配置信息在这个页面可以找到:https://jestjs.io/docs/zh-Hans/configuration
可以稍微修改下jest.config.js,将collectCoverage: true, 可以再设置一下coverageReporter
于是可以运行 npm run test:unit
在控制台可以打出覆盖率报告,也可以在tests/unit/converage下面打出这些覆盖率报告。
jsconfig.json
这个是给IDE vscode使用的配置文件。
plop机制
plop机制是自动生成vue文件的一种机制。
plop相关的有几个地方,一个是package.json里面的npm run new。一个是plop.js中定义了3个生成器:view,store,component。
这三个生成器在文件夹plop-template中都有定义,定义了一个prompt.js和一个index.hbs。hbs是模版文件,prompt是交互文件,所以我们可以在命令行中使用npm run new 来初始化一个vue文件。
plopjs的文档地址:https://plopjs.com/documentation/
postcss.config.js
postcss.config.js说明可以使用postcss插件来进行配置。
关于为什么要使用postcss,这两篇文章写的很好:
https://segmentfault.com/a/1190000003909268
https://juejin.im/post/59e5dc1d6fb9a0450a666d62
简单来说,使用postcss会让css可以按照标准写法,生成不同前缀的写法文件
这个是官方说明地址:https://github.com/postcss/postcss/blob/master/README-cn.md
svgo
我们在package.json中可以看到有个script是svgo。
这个命令是将svg图片文件进行压缩的。https://panjiachen.github.io/vue-element-admin-site/zh/feature/script/svgo.html
svg是矢量图,svg放大不失真。svg和canvas都是h5推荐使用的图形技术,canvas基于像素,svg为矢量,还有完整的动画,事件机制。
目录结构
其实vue-elemnt-admin的目录结构在官网这边也描述很清楚了:
https://panjiachen.github.io/vue-element-admin-site/zh/guide/#目录结构
这个目录结构还是很适合做前端工程学习的。
vue-elemnt-admin源码学习的更多相关文章
- Vben Admin 源码学习:状态管理-角色权限
前言 本文将对 Vue-Vben-Admin 角色权限的状态管理进行源码解读,耐心读完,相信您一定会有所收获! 更多系列文章详见专栏 Vben Admin 项目分析&实践 . 本文涉及到角 ...
- vue 2.0源码学习笔记—new Vue ( Vue 初始化过程 )
new Vue(Vue 初始化) 一个vue实例化到底经历了什么?已下是博主自己的总结,不正确的地方请指出,谢谢~ 一.简述 从使用角度来看,挂载的顺序如下 1. $slots 2. $scopedS ...
- Vben Admin 源码学习:状态管理-错误日志
0x00 前言 本文将对 Vue-Vben-Admin 的状态管理实现源码进行分析解读,耐心读完,相信您一定会有所收获! 0x01 errorLog.ts 错误日志 文件 src\store\modu ...
- Vben Admin 源码学习:项目初始化
0x00 前言 Vue-Vben-Admin 是一个免费开源的中后台模版.使用了最新的vue3,vite2,TypeScript等主流技术开发,开箱即用的中后台前端解决方案考. 本系列本着学习参考的目 ...
- vue虚拟DOM源码学习-vnode的挂载和更新流程
代码如下: <div id="app"> {{someVar}} </div> <script type="text/javascript& ...
- Vue.js 源码学习笔记
最近饶有兴致的又把最新版 Vue.js 的源码学习了一下,觉得真心不错,个人觉得 Vue.js 的代码非常之优雅而且精辟,作者本身可能无 (bu) 意 (xie) 提及这些.那么,就让我来吧:) 程序 ...
- Vue源码学习1——Vue构造函数
Vue源码学习1--Vue构造函数 这是我第一次正式阅读大型框架源码,刚开始的时候完全不知道该如何入手.Vue源码clone下来之后这么多文件夹,Vue的这么多方法和概念都在哪,完全没有头绪.现在也只 ...
- Vue源码学习(一):调试环境搭建
最近开始学习Vue源码,第一步就是要把调试环境搭好,这个过程遇到小坑着实费了点功夫,在这里记下来 一.调试环境搭建过程 1.安装node.js,具体不展开 2.下载vue项目源码,git或svn等均可 ...
- Vue源码学习三 ———— Vue构造函数包装
Vue源码学习二 是对Vue的原型对象的包装,最后从Vue的出生文件导出了 Vue这个构造函数 来到 src/core/index.js 代码是: import Vue from './instanc ...
- Vue源码学习二 ———— Vue原型对象包装
Vue原型对象的包装 在Vue官网直接通过 script 标签导入的 Vue包是 umd模块的形式.在使用前都通过 new Vue({}).记录一下 Vue构造函数的包装. 在 src/core/in ...
随机推荐
- MySQL不香吗,清华架构师告诉你为什么还要有noSQL?
强烈推荐观看: 阿里P8架构师谈(数据库系列):NoSQL使用场景和选型比较,以及与SQL的区别_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com noSQL的大概 ...
- Rocket - debug - TLDebugModuleInner - ABSTRACTAUTO
https://mp.weixin.qq.com/s/adSB7lmKcqmwVd80-gmdIw 简单介绍TLDebugModuleInner中ABSTRACTAUTO寄存器的实现. 1. ABST ...
- Rocket - tilelink - RegionReplicator
https://mp.weixin.qq.com/s/XZVCdt50tM6lavchGm9GRg 简单介绍RegionReplicator的实现. 1. 基本介绍 根据mask ...
- Rocket - tilelink - CrossingHelper
https://mp.weixin.qq.com/s/y432EkLcBvVn2u_U3tPWeA 简单介绍CrossingHelper的实现. 1. 基本介绍 为节点生成一个跨 ...
- Java实现蓝桥杯 最短路
问题描述 给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环).请你计算从1号点到其他点的最短路(顶点从1到n编号). 输入格式 第一行两个整数n, m. 接下来的m行,每行有三个 ...
- Java实现 蓝桥杯VIP 算法训练 阿尔法乘积
蓝桥杯–阿尔法乘积 问题描述 计算一个整数的阿尔法乘积.对于一个整数x来说,它的阿尔法乘积是这样来计算的:如果x是一个个位数,那么它的阿尔法乘积就是它本身:否则的话,x的阿尔法乘积就等于它的各位非0的 ...
- Java实现 LeetCode 258 各位相加
258. 各位相加 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数. 示例: 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2. 由 ...
- Linux 权限管理-ACL权限
ACL权限是为了在现有的所有者.所属组.其他人不够使用的情况下使用的,使用它必须保证文件所在的分区支持ACL df -h:查看系统所有分区信息 dumpe2fs -h /dev/vda1,可以查看分区 ...
- 阿里巴巴 《Java 开发者手册》+ IDEA编码插件
4月22日,阿里巴巴发布了泰山版<Java 开发手册>,以前以为终极版就真的是终极版了,没想到还是想的太简单了,继终极版之后又发布了详尽版.华山版,这不,泰山版又来了.想想也对,行业一直在 ...
- redis 分布式锁的简单使用
RedisLock--让 Redis 分布式锁变得简单 目录 1. 项目介绍 2. 快速使用 2.1 引入 maven 坐标 2.2 注册 RedisLock 2.3 使用 3. 参与贡献 4. 联系 ...