获得徽章 0
- 最近在写 Vue-cli 脚手架插件的时候遇到一个场景,如果用户初始化项目的时候引入了 Vue-Router 和 Vuex,我需要把文件中的 import Vue from 'vue' 替换成 const Vue = window.Vue(这么做是我们这边项目的特殊场景所致),那么在 eslint 规范中,import 语句是放在文件顶部,所以简单的字符串替换是不可以的,你需要把这行代码插入到最后一个 import 语句的后面。因此我用了 recast 这个库先把代码生成 AST 树,再去修改 AST 树,最后再生成 code。
这里有个问题,在处理 router.js 文件的时候,遇到了 import('xxx') 这种 webpack 支持的动态 import 语法,这个在转换成 AST 树的时候会报错,那么怎么办呢?我已经用一种奇技淫巧解决了,问题留给你们做个小小的思考😀展开415 - github上新开一个组织,欢迎广大前端加入,
github.com网页链接,主要是用来针对各个技术话题,提issue问题,发起讨论,当issue得到较圆满的结论后会总结出一篇问题解决方案供所有网友参考。谢谢支持。
28