Vue是个优秀的前端框架,不管是前端还是后端开发人员都能很快使用Vue来开发应用。但是随着项目开发的深入,组件之间的依赖就变得越来越多,耦合越来越严重。这时候我们迫切地需要分析下组件和依赖之间的调用关系了。

一、探索

经过一番寻找,我发现了stats-webpack-plugin这个插件。链接中有这个插件在webpack中的使用方法。我下面的教程基本是参考了官方指引。

二、安装和使用

  1. 首先安装stats-webpack-plugin插件
$ npm install --save-dev stats-webpack-plugin
  1. 然后把下面的配置放到wepback.configplugins
var StatsPlugin = require('stats-webpack-plugin');

module.exports = {
plugins: [
new StatsPlugin('stats.json', {
chunkModules: true,
exclude: [/node_modules[\\\/]react/]
})
]
};

stats.json里面具体的配置可以参考官网stats.json详细配置,里面有很详细的说明。

但是我们使用的是vue-cli,里面并没有webpack.config.js或者webpack.prod.js,我们根本不能添加配置到项目中,那么vue-cli该如何使用呢?

  1. 第一步肯定是安装$ npm install --save-dev stats-webpack-plugin,或者直接添加到package.json中

  2. 添加配置的时候与webpack不太相同,我们需要在vue.config.js中声明StatsPlugin。const StatsPlugin = require('stats-webpack-plugin')

  3. configureWebpack中的plugin中增加如下配置

 plugins: [new StatsPlugin('stats.json', {
chunkModules: true,
chunks: true,
assets: false,
modules: true,
children: true,
chunksSort: true,
assetsSort: true
})]
  1. 查看依赖关系

    打包完成后,会在你指定的目录生成dist文件,你会发现dist文件夹下面会有一个stats.json文件(warning:纯文本文件大小可能超过10M,直接打开请慎重

    Vue-Cli项目如何查看依赖调用关系?的更多相关文章

    1. 改造@vue/cli项目为服务端渲染-ServerSideRender

      VUE SEO方案二 - SSR服务端渲染 在上一章中,我们分享了预渲染的方案来解决SEO问题,个人还是很中意此方案的,既简单又能解决大部分问题.但是也有着一定的缺陷,所以我们继续来看下一个方案--服 ...

    2. golang 查看代码调用关系图

      go-callvis 是github上一个开源项目,可以用来查看golang代码调用关系. 安装 安装graphviz $ brew install graphviz 安装go-callvis go ...

    3. vue cli 项目的提交

      前提: 配置git.以及git的ssh key信息 假设已经都安装好了,此处我用vue项目为例,因为vue-cli已经默认为我生成了ignore文件 在项目目录 初始化本地仓库,会创建一个.git目录 ...

    4. Vuex内容解析和vue cli项目中使用状态管理模式Vuex

      中文文档:vuex官方中文网站 一.vuex里面都有些什么内容? const store = new Vuex.Store({ state: { name: 'weish', age: }, gett ...

    5. vue/cli项目添加外部js文件的一个方法

      有一个util.js文件,内容如下 function Util () { ... } export default new Util() 可以在main.js里面通过import引入js import ...

    6. vue.cli项目中src目录每个文件夹和文件的用法

      assets文件夹是放静态资源:components是放组件:router是定义路由相关的配置:view视图:app.vue是一个应用主组件:main.js是入口文件:

    7. Vue cli项目开启Gzip

      目录 安装 compression-webpack-plugin 更改配置文件 服务器开启gzip功能 安装 compression-webpack-plugin 建议安装v1.1.11版本,最新版本 ...

    8. vue cli 项目中设置背景图

      https://blog.csdn.net/MoLvSHan/article/details/78204972 不能直接写成相对路径,像下面这这种就会报错 backgroundImage: " ...

    9. 前端——Vue CLI 3.x搭建Vue项目

      一.Node安装 windows 1. Node.js (>=8.9, 推荐8.11.0+) Node官网下载 .msi 文件,按步骤下载安装即可. 安装完之后在cmd中输入 node -v,若 ...

    随机推荐

    1. 机器学习之DBSCAN聚类算法

      可以看该博客:https://www.cnblogs.com/aijianiula/p/4339960.html 1.知识点 """ 基本概念: 1.核心对象:某个点的密 ...

    2. JVM学习笔记之认识JDK(一)

      1. HotSpot VM: HotSpot VM是Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机. 什么是HotSpot VM & 深入理解Java虚拟机 ...

    3. koa2中间件

      在我看来,前端框架的中间件的思想来源于传统后端的切面编程(AOP)思想,比如我们常见的身份校验(JWT). axios的拦截器也是基于这种程序设计模式的. 在koa中,实际上是由一个数组对象来保存所有 ...

    4. 35 个最好用 Vue 开源库

      2018年度 35 个最好用 Vue 开源库 在本文中,我们将推荐一些非常好用的 Vue 相关的开源项目.无论是开发新手还是经验丰富的老手,我们都喜欢开源软件包.对于开发者来说,如果没有这些开源软件包 ...

    5. 还原Master数据库后SQLSERVER的服务无法开启

      如果还原Master数据库后,SQLSERVER的服务无法开启,请注意是否因为其他的系统数据库在Master备份中记录的路径与现在的路径不一致导致的. 如果是,可以在cmd中执行“NET START ...

    6. python3速查参考- python基础 2 -> if语句应用 + while循环应用

      if语句应用之——求最大值 """ 求三个数字中的最大值,并打印出来 """ a = int(input("a:")) ...

    7. 禁止crontab -r清空定时任务列表误操作

      关于crontab 1.附件cron.sh放/usr/bin目录下面 2.在/etc/bashrc文件末尾添加 alias crontab='/usr/bin/cron.sh' 或者在当前root用户 ...

    8. 【转帖】docker-get拉取镜像

      docker-get拉取镜像 题目很诱人 找时间测试一下 是否可以翻越长城下载镜像. https://www.cnblogs.com/fuyuteng/p/10904495.html docker-g ...

    9. selenium开发-C#/java/Python

      背景:之前由于自己有编写CefSharp.WinForms 窗体版以及 接口化 WCF+CefSharp.WinForms的网站版本,但是由于某些原因,延伸出Selenium学习与研究 总结:sele ...

    10. 怎样解决SQL Server内存不断增加问题

      原文:怎样解决SQL Server内存不断增加问题 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn. ...