В приложении angular2 (rc1) Я храню некоторые данные в localstorage. Я хочу предоставить пользователю возможность хранить данные в файле и импортировать их в другую систему или браузер. Трудно было узнать, как это сделать, из-за санитарии. Наконец я пришел к этому решению.Экспорт данных в файл в Angular2
import { DomSanitizationService } from '@angular/platform-browser';
import { UserdataService } from '../shared';
export class ExportComponent {
constructor(private userdata: UserdataService, sanitizer:DomSanitizationService) {
let dataString = JSON.stringify(userdata.getDataObject());
let blob = new Blob([dataString], { type: 'application/json' });
this.downloadurl =
sanitizer.bypassSecurityTrustUrl(URL.createObjectURL(blob));
}
, который я использовал в качестве шаблона
<a [href]="downloadurl" download="data.json" >Download</a>
Я нашел дезинфицирующее и его метод bypassSecurityTrustUrl путем угадывания и в @ оглавлению Угловое/платформы браузера/SRC/безопасности/dom_sanitization_service.d.ts. Я не мог найти никакой документации для этого.
Это правильный способ решить эту проблему? Если я откажусь от вызова обхода доверия безопасности, URL-адрес получит префикс unsafe:
, что делает его нефункциональным. Есть ли какая-то документация, которую я пропустил?
Это может помочь http://stackoverflow.com/questions/37076867/in-rc-1-some-styles-cant-be-added-using-binding-syntax/37076868#37076868 –