Angular2,SaxParser,sax.js,意外标记`<`

时间:2016-06-29 07:46:32

标签: angular sax

我在angular2(typescript)中使用SaxParser(sax.js)。

设置类似于Stackoverflow: how to import sax parser into angular2 using typescript

systemjs.config.js:

...
var map = {
  ...
  'sax':    'node_modules/sax'
};
var packages = {
  ...
  'sax':    { defaultExtension: 'js' }
};
...
var config = {
  map: map,
  ...
}
System.config(config);
...

我的index.html我已经

<script src="node_modules/sax/lib/sax.js"></script>

现在我已经创建了saxParser.ts:

import { SAXParser } from 'sax';

export class SaxParser {
  parser;
  options = {
    lowercase: true,
    normalize: true,
    xmlns: true,
    position: true,
  }

  constructor() {
    this.parser = new SAXParser(true, this.options);
  }
}

在我的服务中使用它,如:

someFunction() {
  ...
  let parser = new SaxParser();
  ...
}

现在我收到以下错误:

  

错误:SyntaxError:意外的令牌&lt;           在Object.eval(http://127.0.0.1:37420/app/saxParser/saxParser.js:2:13)           在eval(http://127.0.0.1:37420/app/saxParser/saxParser.js:17:4)           在eval(http://127.0.0.1:37420/app/saxParser/saxParser.js:18:3)       评估http://127.0.0.1:37420/node_modules/sax       评估http://127.0.0.1:37420/app/saxParser/saxParser.js       评估http://127.0.0.1:37420/app/services/parseXml.service.js       评估http://127.0.0.1:37420/app/services/parseXml.service.spec.js       加载http://127.0.0.1:37420/app/services/parseXml.service.spec.jsZoneDelegate.invoke @ zone.js时出错:323Zone.run @ zone.js:216(匿名函数)@ zone.js:571ZoneDelegate.invokeTask @ zone.js:356Zone.runTask @ zone.js:256drainMicroTaskQueue @ zone。 js:474ZoneTask.invoke @ zone.js:426

抛出此错误的代码行是:

var sax_1 = require('sax');

我不确定它是导入问题还是其他问题(因为意外<)...有谁知道这个错误?以及如何解决?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以尝试修改Given(/^I am on google$/) do visit('http://google.com') end 文件,如下所示:

systemjs.config.js