Angular 2 error : SyntaxError: Unexpected token <

Angular 2 error : SyntaxError: Unexpected token <

我知道这个问题被问了大约 100 次,但我收到了这个错误。请检查屏幕截图。

Error: SyntaxError: Unexpected token < at Object.eval (http://localhost:3000/node_modules/ng2-bootstrap/components/datepicker/date-formatter.js:2:14) at eval (http://localhost:3000/node_modules/ng2-bootstrap/components/datepicker/date-formatter.js:13:4) Evaluating http://localhost:3000/moment Evaluating http://localhost:3000/node_modules/ng2-bootstrap/components/datepicker/date-formatter.js Evaluating http://localhost:3000/node_modules/ng2-bootstrap/components/datepicker/datepicker-inner.js Evaluating http://localhost:3000/node_modules/ng2-bootstrap/components/datepicker/datepicker.js Evaluating http://localhost:3000/node_modules/ng2-bootstrap/components/datepicker/datepicker-popup.js Evaluating http://localhost:3000/node_modules/ng2-bootstrap/components/datepicker.js Evaluating http://localhost:3000/node_modules/ng2-bootstrap/ng2-bootstrap.js Error loading http://localhost:3000/app/main.js

我遵循了修复系统配置的解决方案

System.config({
        packages: {
          app: {
            format: 'register',
            defaultExtension: 'js'
          },
          'ng2-bootstrap': {
            defaultExtension: 'js'
          }
        },
        map: {
          // place for ng2 modules mapping
          'ng2-bootstrap': 'node_modules/ng2-bootstrap'
        }
});

但是在这个解决方案之后我得到了错误并且页面没有加载...

任何人都知道要遵循的步骤然后请告诉我。

事实上,ng2-boostrap 提供了一个捆绑文件。只需将其添加到脚本元素中并删除 SystemJS 的相关配置:

<script src="node_modules/ng2-bootstrap/bundles/ng2-bootstrap.js"></script>

System.config({
    packages: {
      app: {
        format: 'register',
        defaultExtension: 'js'
      },
      'ng2-bootstrap': {
        defaultExtension: 'js'
      }
    },
    map: {
      // place for ng2 modules mapping
      'ng2-bootstrap': 'node_modules/ng2-bootstrap'
    }
});

这可以在使用 npm 安装 ng2-bootstrap 后完成。