首页 > 解决方案 > 如何使用 Parcel Bundler 将打字稿文件捆绑到单个 js 文件?

问题描述

我正在使用一个非常基本的设置来测试Parcel Bundler,但是在尝试将我的所有 Typescript 文件捆绑到一个 JS 文件时遇到了错误。

tsconfig.json

{
    "compilerOptions": {
        "sourceMap": true,
        "strict": true,
        "noImplicitReturns": true,
        "noImplicitAny": true,
        "outFile" : "./dist/bundle.js",
        "module": "CommonJS",
        "strictPropertyInitialization": false,
        "moduleResolution": "node",
        "target": "es5",
        "allowJs": true,
    },
    "include": [
        "./src/**/*"
    ]
}

错误:仅支持“amd”和“system”模块以及--outFile

但是当我省略时outFile : "./dist/bundle.js,所有 Typescript 文件都会被编译为单独的.js文件

将模块设置更改为错误提示systemamd类似错误提示是没有意义的。我不使用 SystemJS 或 AMD,所以这些会在浏览器中产生错误:

ReferenceError:找不到变量:系统

类型错误:未定义不是函数(AMD)

如何告诉 Parcel 将 TS 文件捆绑到一个 JS 文件中?

标签: typescriptpackage.jsonparceljs

解决方案


您以错误的方式使用包裹。使用 parcel 时,您应该使用单个条目(浏览器的 HTML 或节点的 js)然后运行parcel entry,parcel 将自动输出您想要的内容。

根据问题中的描述,我猜您正在使用tsc,您应该将其与包裹一起使用。所以outFile也不需要选项。


推荐阅读