Mik*_*gan 5 rollup typescript rollupjs
这是一个github 仓库重现此问题的
我有这个 package.json:
{
"name": "rollup-ts-deps",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "Mike Hogan",
"license": "ISC",
"devDependencies": {
"@rollup/plugin-typescript": "^8.2.0",
"rollup": "^2.41.0",
"typescript": "^4.2.3"
},
"dependencies": {
"@http4t/core": "0.0.121"
}
}
Run Code Online (Sandbox Code Playgroud)
和这个 rollup.config.js
import typescript from '@rollup/plugin-typescript';
export default {
input: 'src/index.ts',
output: {
file: 'lib/index.js',
format: 'cjs'
},
plugins: [
typescript()
]
};
Run Code Online (Sandbox Code Playgroud)
src/index.ts 包含以下内容:
import {post} from "@http4t/core/requests";
console.log(post)
Run Code Online (Sandbox Code Playgroud)
当我跑步时npx rollup -c我得到:
[!] Error: Unexpected token (Note that you need plugins to import files that are not JavaScript)
node_modules/@http4t/core/requests.ts (5:30)
3: import {Authority, Uri, UriLike} from "./uri";
4:
5: export function request(method: Method, uri: UriLike, body?: HttpBody, ...headers: Header[]): HttpRequest {
Run Code Online (Sandbox Code Playgroud)
如何配置 rollup 来处理 Typescript 文件的依赖项?
此提交演示了该问题的修复。
总之,我添加了以下tsconfig.json文件:
{
"compilerOptions": {
"target": "ES2020",
"module": "ES2020",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"outDir": "./dist/esm",
"declaration": true,
"moduleResolution": "node"
},
"include": [
"./src",
"node_modules/@http4t"
]
}
Run Code Online (Sandbox Code Playgroud)
重要的部分是node_modules/@http4t作为源目录包含在内。
frederikhors关于这个问题的评论是有说服力的贡献。
| 归档时间: |
|
| 查看次数: |
7405 次 |
| 最近记录: |