@babel/traverse

官网: https://babeljs.io/docs/en/babel-traverse

github:https://github.com/babel/babel/blob/master/packages/babel-traverse/test/traverse.js

了解一个东西最直接的方法就是看官网了解怎么用,看github源码Test模块代码的使用和测试。

@babel/traverse 可以用来遍历更新@babel/parser生成的AST

  • 对语法树中特定的节点进行操作(特殊节点的函数)
  • 进入节点(enter)
  • 退出节点  (exit)
traverse(ast, {
CallExpression(p) {
// 对语法树中特定的节点进行操作 参考@babel/types (特定节点类型)
// CallExpression 特定节点
},
FunctionDeclaration: function(path) {
// 对语法树中特定的节点进行操作 参考@babel/types (特定节点类型)
// FunctionDeclaration 特定节点
}
// ..... enter(path) {
// 进入节点
if (path.node.type === "ThisExpression") {
// 对所有的操作
};
}
exit(path) {
// 退出节点
console.log(` exit ${path.type}(${path.key})`)
}
})

最新文章

  1. python文件读写操作与linux shell变量命令交互执行
  2. 建模分析之机器学习算法(附python&R代码)
  3. 编解码-marshalling
  4. resque 遍历加载job目录下的类
  5. Mplayer 官方中文手册
  6. 几百万的数据,mysql快速高效创建索引
  7. powershell查看pc信息的常用命令
  8. 【百度地图API】JS版本的常见问题
  9. 深入理解UITableView
  10. Linq to sql 操作
  11. Python网络编程——处理套接字错误
  12. JVM菜鸟进阶高手之路四
  13. zabbix2.2部署安装(安装环境Centos 6.* X64)
  14. AI Haar特征
  15. 【Selenium2】【selenium之 定位以及切换frame(iframe)】
  16. How to block a specific IP Address using UFW
  17. Spring MVC接受参数的注解
  18. 20165226 2017-2018-4 《Java程序设计》第7周学习总结
  19. Bzoj1822 [JSOI2010]Frozen Nova 冷冻波
  20. Part8-不用内存怎么行_我从内部看内存lesson1

热门文章

  1. shiro环境搭建及基本操作
  2. idea出现灰色或者黄色的波浪线如何去除
  3. 一个好看的测试报告模板BeautifulReport
  4. WDS部署Windows server2012初试
  5. vue修饰符 .lazy .number .trim
  6. 通过TCODE查找SPRO路径
  7. Python - 数据结构与算法(Data Structure and Algorithms)
  8. 将json文件转化为可视化
  9. .NET Core和.NET Standard 区别与联系
  10. 【Python】【demo实验1】【Python运行时强制刷新缓冲区,输出信息】(Python3 应不存在类似情况)