如何在javascript文件中导入 typescript 文件

lqfhib0f  于 2023-01-27  发布在  TypeScript
关注(0)|答案(3)|浏览(366)

我正在尝试将 typescript 文件(src/index.ts)导入到JavaScript文件(tests/steps/utils.js)中
但是当我在我的javascript文件中使用const index_1 = require("../../src/index");时,它给出了一个错误:Cannot find module '../../src/index'
但是文件就在那里,有没有其他方法可以把typescript文件导入javascript文件?

fsi0uk1n

fsi0uk1n1#

不行,你得先把脚本文件编译成js。

1l5u6lss

1l5u6lss2#

不能将ts导入js文件。
如果你真的需要.ts文件中的模块,尝试从dist文件夹导入,其中有ts编译器的输出路径,或者重构成javascript。

6mw9ycah

6mw9ycah3#

看起来您需要babelwebpack。这些工具允许在开发和构建中一起使用jsts
.babelrc文件(注意@babel/preset-typescript):

{
  "presets": [
    "@babel/preset-env",
    "@babel/preset-react",
    "@babel/preset-typescript"
  ],
  "plugins": [
    "@babel/plugin-proposal-class-properties",
    "@babel/plugin-proposal-export-default-from",
    "@babel/plugin-proposal-export-namespace-from",
    "@babel/plugin-proposal-optional-chaining",
    "@babel/plugin-transform-runtime"
  ]
}

并在webpack.config.js中添加如下内容(注意rules/babel-loader中的ts):

module: {
  rules: [
    {
      test: /\.(js|ts|jsx)$/,
      exclude: /node_modules/,
      use: {
        loader: 'babel-loader',
      },
    },
  ],
}

相关问题