我有一個 NextJS/Typescript 專案,我想在其中添加一個 CLI 腳本,該腳本應該處理服務器上的一些檔案。
不幸的是,我無法運行腳本。
示例腳本src/cli.ts:
console.log("Hello world");
// Process files
我嘗試使用以下命令運行腳本:
ts-node src/cli.ts
但我收到此錯誤訊息:
src/cli.ts:1:1 - error TS1208: 'cli.ts' cannot be compiled under '--isolatedModules' because it is considered a global script file. Add an import, export, or an empty 'export {}' statement to make it a module.
當我添加一個空的“export {}”陳述句時,我收到以下錯誤訊息:
(node:15923) Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
據我所知,現在無法將 NextJS 與 ES 模塊一起使用。
有沒有另一種方法可以在 NextJS 專案中運行腳本?也許我需要更改 webpack 配置?
我使用的是最新版本:Next 11、Typescript 4.3、Node 14.18、ts-node 10.13,默認為tsconfig.json, package.json。
uj5u.com熱心網友回復:
運行這個:
npx ts-node --skip-project src/cli.ts
參考:https : //github.com/TypeStrong/ts-node#tsconfig
該--skip-project標志不會決議/加載您的tsconfig.json,因此會忽略"isolatedModules": trueNext.js 所需的。
您還可以為該選項創建一個單獨的tsconfig檔案ts-node并使用該--project [path]選項。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/317155.html
