2016-08-02 2 views
2

각도 2 (Type 1 포함 RC) 웹 응용 프로그램에서 XML 파서로 xml2js를 사용하려고합니다. 그러나 나는 약간의 에러와 아무런 해결책도 얻지 못했다. <script src="../node_modules/xml2js/lib/xml2js.js"></script> : tsd install xml2js 각도 2의 JS 라이브러리 xml2js 사용

  • 내 index.html을에 포함 된 스크립트 링크를 통해 d.ts 파일에 따라 설치 npm install xml2js
  • 를 통해

    • 설치 xml2js : 여기

      내가 단계별로 무슨 짓
    • 지도에 'xml2js': '../node_modules/xml2js'을 추가하고 'xml2js': { defaultExtension: 'js' }을 패키지에 추가하여 구성하십시오.
    • 내 comp에서 xml2js의 파서를 가져옵니다.

      module.js:440 Uncaught Error: Cannot find module 'sax'

      GET file:///C:/xxx/source/node_modules/xml2js net::ERR_FILE_NOT_FOUND

      :
      var parser = new Parser(); var xml = "<root>Hello xml2js!</root>" parser.parseString(xml, function (err, result) { console.dir(result); });

    이 구성 요소를 포함하는 웹 페이지를 열 때 브라우저 콘솔이 나에게 말한다 무엇인가 : onent import {Parser} from 'xml2js';

  • 를 통해 구성 요소의 생성자를 사용해보십시오

    index.html:17 Error: Error: XHR error loading file:///C:/xxx/source/node_modules/xml2js
    at ZoneDelegate.invokeTask (file:///C:/xxx/source/node_modules/zone.js/dist/zone.js:356:38)
    at Zone.runTask (file:///C:/xxx/source/node_modules/zone.js/dist/zone.js:256:48)
    at XMLHttpRequest.ZoneTask.invoke (file:///C:/xxx/source/node_modules/zone.js/dist/zone.js:423:34)
    Error loading file:///C:/xxx/source/node_modules/xml2js as "xml2js" from file:///C:/xxx/source/frontend/angular/components/mycomponent/mycomponent.js

    "sax"는 npm을 통해 설치된 node_modules/xml2js/node_modules/sax에 있습니다. 외부 라이브러리 설치를 놓친 이유가 무엇입니까? Angular 2 & TypeScript로 외부 JS 라이브러리를 사용하는 "더 나은"방법이 있습니까?

  • +0

    같은 것을 방문하십시오. 결국 그것은 "이벤트"또는 "타이머"를 찾을 수 없다는 불평과 그 문제를 어떻게 처리해야할지 몰랐습니다. – sss4r

    답변

    2

    예, 더 좋은 방법이 있습니다.

    System.set('xml2js', System.newModule(require('xml2js')))을 사용하면 systemjs에서 로컬 xml2js 모듈을로드 할 수 있습니다.

    라이브 데모를 보려면 Github Repo

    +0

    고마워요! 이것은 훌륭한 작업, 간단한 솔루션입니다. – fr31b3u73r

    +0

    불행히도 이것을 시도 할 때 콘솔에 ReferenceError가 표시됩니다. 변수를 찾을 수 없습니다.가 필요합니다. – sss4r

    +0

    @ sss4r 죄송합니다. 이유가 무엇인지 알 수 없습니다. 정보가 너무 적습니다. –