2016-11-17 4 views
1

XML 파일 읽기/쓰기가 지원됩니까? Aurelia 문서를 올바르게 읽으면 Aurelia-fetch-client 및 aurelia-http-client가 JSON 응답 유형 (Aurelia docs의 HTTP 서비스) 용으로/예상됩니다. SPA 변환 프로젝트가 매우 커서 Aurelia를 사용하고 싶습니다. 그러나 모든 페이지 내용과 포인터는 XML 문서로 출력되고 GUID를 통해 매핑됩니다. Aurelia와 함께 사용하기 위해 JSON에 대한 XML 용 사용자 정의 루틴을 빌드해야합니까?Aurelia for XML

답변

4

Fetch API 사양에는 현재 응답 스트림을 XML 문서 (https://developer.mozilla.org/en-US/docs/Web/API/Response#Methods)로 변환/변환 할 수있는 메소드가 없습니다. (Aurelia가 브라우저에서 지원하는 동일한 페치 API는 API와 일치하는 로직을 구현하는 polyfill (whatwg fetch)을 사용함)

스트림을 텍스트로 가져온 다음 출력을 구문 분석하면됩니다 XML을 파싱 할 수있는 라이브러리가 포함되어 있습니다.

jQuery의 parseXML ( https://api.jquery.com/jQuery.parseXML/) 방법으로 예를 들어 답장을

import {autoinject} from 'aurelia-framework'; 
import {HttpClient} from 'aurelia-fetch-client'; 
import 'fetch'; 
import * as $ from 'jquery'; 

@autoinject 
export class XMLFetchTest { 

    constructor(private http: HttpClient) { 
    http.configure(config => { 
     config 
     .useStandardConfiguration() 
     .withBaseUrl('/src/'); 
    }); 
    } 

    public activate() { 
    return this.http.fetch('test.xml') 
     .then(response => response.text()) 
     .then(text => { 
     let doc = $.parseXML(text); 
     })); 
    } 
} 
+0

감사합니다. 나는 그것이 이처럼 될 것이라고 생각했습니다. Angular를 피하려고 정말 열심히 노력했습니다. 해결책이라고 생각합니다. 프레임 워크에 뭔가가 있었으면 좋겠어. – RT1138