Skip to content

YaoZeyuan/parse_component_by_babel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

parse_compontent_by_babel

利用 babel 统计 node 项目中组件使用情况, 并将统计结果输出为 json

组件包说明

minimist => 解析命令行参数, 周下载量 3000w 次

测试命令 =>

node index.js \
--project_uri="/home/yao/www/test/demo_project"    \
--lib_list_json='["antd"]'  \
--output_uri="/home/yao/www/test/demo_project/output.json"   \
--project_name="hello_world"        \
--log_uri='/home/yao/www/test/demo_project/log.log'

todo

  • 将组件库统计改为 npm 包统计
  • 拆分代码, 将代码规范化
  • 移除最外层的 index.ts, 此为冗余文件
  • 编写使用说明
  • 编写文档

使用说明

设计目标

解析指定项目中 npm 组件库中组件实际使用次数

设计思路

  1. 读取项目中所有文件, 计入待解析列表中
  2. 初始化SummaryCollection
  3. 针对每一个待解析文件
    1. 使用 babel 进行解析, 检查是否有使用指定 npm 包内组件/函数, 统计使用了几次
      1. 初始化该文件的UsedSummaryInFile
      2. 使用 babel 将源代码转换为标准 es5 代码
      3. 检查是否使用了指定 npm 包
      4. 解析代码, 检查是否使用了 npm 包下的函数, 每使用一次, 记录结果加一
      5. 返回UsedSummaryInFile
    2. 将分析结果UsedSummaryInFile加入SummaryCollection
  4. 输出汇总结果

项目说明文档

项目说明文档

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages