未捕获的ReferenceError:在angular2中未定义require

Bud*_*aka 7 angular2-routing angular

<html>
<head>
<title>Angular 2 QuickStart</title>
<!-- 1. Load libraries -->
<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
<script src="node_modules/rxjs/bundles/Rx.umd.js"></script>
<script src="node_modules/angular2/bundles/angular2-all.umd.js"></script>
<!-- 2. Load our 'modules' -->
<script src='app/app.component.js'></script>
<script src='app/boot.js'></script>

<!--upgrade-->
<script src="node_modules/angular2/upgrade.js"></script>
</head>
<!-- 3. Display the application -->
<body>
<my-app>Loading...</my-app>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

没有<script src="node_modules/angular2/upgrade.js"></script>代码工作正常.当我包括upgrade.js.it显示"未捕获的ReferenceError:require未在angular2中定义".如何克服此错误.

Thi*_*ier -1

require功能由SystemJS提供。您需要将其添加到您的script

<script src="node_modules/systemjs/dist/system.src.js"></script>
<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
<script src="node_modules/rxjs/bundles/Rx.umd.js"></script>
<script src="node_modules/angular2/bundles/angular2-all.umd.js"></script>
(...)
Run Code Online (Sandbox Code Playgroud)

这是一个描述工作示例的 plunkr:https://plnkr.co/edit/JXLDFBW4A1mi9tyNHoJ3 ?p=preview 。

希望它对你有帮助,蒂埃里

  • 我正在组件中尝试 `var Rx = require('rx-dom');`,我已经包含了 systemJS 但给出了相同的错误。 (2认同)