How to solve 'Unhandled Promise Rejection: Error: Unable to resolve bare specifier "app.js" from http://localhost:3000/'

How to solve 'Unhandled Promise Rejection: Error: Unable to resolve bare specifier "app.js" from http://localhost:3000/'

我一直在研究打字稿。 我在研究节点模块时遇到以下错误。

点击匿名函数将我带到下面的代码。

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title></title>
    <meta name="author" content="">
    <meta name="description" content="">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Learning TypeScript</title>
    <script src="node_modules/systemjs/dist/system.js"></script>
</head>

<body>
    <script>
        System.import('app.js')
    </script>
</body>

</html>

这是我的 demo project

的 link

如果您使用的是最新版本的SystemJS。你必须做出一些改变:

  • index.html:使用 System.import('./app.js') 而不是 System.import('app.js') // hmm

  • tsconfig.json:使用"module": "system"代替"module": "commonjs"

  • app.ts:使用 import { PI, calculateCircumference } from "./maths/circle.js"; 而不是 import { PI, calculateCircumference } from "./maths/circle"; // hmm

(我找不到配置 baseUrldefaultExtension 的方法)

运行 tsc 命令重建 app.js 文件,然后在浏览器上重新加载 html 页面。