在大型程式碼庫中套用可重複的 JavaScript 和 TypeScript codemod(使用 jscodeshift)
在代理需要基於 AST 的 JavaScript 或 TypeScript codemod 以進行批量遷移、API 重寫和大型重構(附帶可審查的差異)時,使用 jscodeshift。
先決條件
Node.js、npm 或 pnpm、Git
安裝
使用符合您環境的官方安裝或設定路徑:
- $ npm install -g jscodeshift
- 讓轉換更具可讀性。
- 若要更新 /docs 中的文件,請使用 npm run docs。
- 若要在本機檢視這些文件,請使用 npx http-server ./docs
來自上游的需求與注意事項:
- const {run: jscodeshift} = require('jscodeshift/src/Runner')
- const path = require('node:path');
- AST 節點是一個純 JavaScript 物件,具有一組特定的欄位,格式為
基本用法或入門注意事項:
-
從 npm 取得 jscodeshift:
-
這會將 runner 安裝為 jscodeshift。
-
VSCode 除錯器
-
從上游文件提取:https://raw.githubusercontent.com/facebook/jscodeshift/HEAD/README.md