问题描述
我有一个打字稿项目,我尝试使用汇总和@ rollup / plugin-typescript构建。 除了我导入模块“ ../src/lib/pages”时,项目都会生成。
用于复制的回购可在以下位置找到:https://github.com/igorovic/mangoost
问题发生在文件cli/cli.ts
中。
错误
[!] Error: Unexpected token (Note that you need plugins to import files that are not JavaScript)
src/lib/filesystem.ts (4:29)
2: import path from 'path';
3:
4: export function WalkSync(Path: string,prefix?: string,options={ignoreDirs: false}){
^
5: let Files: string[] = [];
6: let Listing = fs.readdirSync(Path,{withFileTypes: true});
Error: Unexpected token (Note that you need plugins to import files that are not JavaScript)
at error (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:5195:30)
at Module.error (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:9676:16)
at tryParse (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:9590:23)
at Module.setSource (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:9982:30)
at ModuleLoader.addModuleSource (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:18101:20)
at async ModuleLoader.fetchModule (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:18155:9)
at async Promise.all (index 1)
at async ModuleLoader.fetchStaticDependencies (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:18179:34)
at async Promise.all (index 0)
at async ModuleLoader.fetchModule (/Users/gor00/DEV/mangoost/node_modules/rollup/dist/shared/rollup.js:18156:9)
如何复制
取消注释cli/cli.ts
中的行
//import { pages } from '../src/lib/pages';
//console.log(pages());
运行npm run build
经过一整天的搜索,我没有发现任何可能导致此错误的提示。
解决方法
最终,我通过使用两个单独的tsconfig.json
来解决我的问题,一个使用Rollup构建了捆绑包,另一个使用了打字稿*.ts
cli工具来翻译tsc
文件。
主要问题是要了解@ rollup / plugin-typescript配置选项inlude
与tsconfig.json
选项include不相关。
它用于我尚未挖掘的某些内部机制。