javascript - 导入/导出模块 - Typescript

标签 javascript typescript module

当我尝试导入外部模块并尝试编译我的代码时,出现以下错误消息:app.ts:1 Uncaught ReferenceError: require is not Define at app.ts:1 。 typescript 版本是:2.1.6。

我的 app.ts 文件:

import {PI, calcCircumference } from "./math/circle";

console.log(PI);
console.log(calcCircumference(10));
//console.log();

我的circle.ts文件

export const PI: number = 3.14;

export function calcCircumference(diameter: number) {

    return diameter * PI;
};

我的 tsconfig.json 文件

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "noImplicitAny": false,
        "sourceMap": true
    }
}

谢谢大家

最佳答案

我假设您正在尝试在客户端环境(您的浏览器)中运行代码。在这种情况下,您必须配置模块加载器,因为与 Node.js 等服务器环境不同,浏览器默认不支持模块加载,并且不知道如何“需要”特定模块。

这里有多种选择:

  1. 捆绑工具,如 browserify/webpack
  2. requirejs这样的加载器/systemjs

Google 上您会发现很多有关如何使用上述内容之一设置 typescript 的教程(例如: systemjswebpack )

我个人偏好是 systemjs (使用 jspm 作为包管理器) - 但您的选择将在很大程度上取决于您构建的应用程序的具体要求。

关于javascript - 导入/导出模块 - Typescript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43900230/

相关文章:

javascript - 如何在ios中从javascript接收回调?

javascript - Material-UI,如何在 typescript 中将多种样式与主题合并?

c++ - Visual Studio - 查找导致 C1905(处理器不兼容)的模块

java - 通过在maven java项目中引用parent来拉取模块的依赖关系?

javascript - 获取 `TypeError: jest.fn is not a function`

javascript - Canvas 上的鼠标跟踪器

generics - Typescript 中的泛型是什么?

javascript - React.Component 和 Component 有什么区别?

javascript - HTTP 从本地服务器请求数据

javascript - 使用WebStorm测试Angular JS : unresolved function or method inject()