parse -> traverse(add hook) -> gen
add hook 可以做改变声明,收集依赖
想把JS通过babel转译并整理成一个文件 -> 使用node读文件,通过babel分析的AST得到依赖 -> 写个函数来递归获取依赖关系与代码 -> 写一个函数执行代码 -> 将依赖关系和代码,执行函数转成字符串,写在目标JS文件中。
想把css文件也写进去 -> 在整理依赖关系的函数里校验css -> 写个函数,把CSS字符串挂到dom里 ->把函数写在目标文件里
如何写其他格式的文件 ->把loader开放出去,把放回的字符串写在目标文件里,自己定义吧