1. ホーム
  2. angular

angular2でiframeを使って、書かれているページを読み込む

2022-02-24 05:25:02
<パス

この記事では、次の2つの問題を扱います。
1. サーバーから返された内容をページに書き込む
2.angular2でiframeを使い、ページを読み込む

i. サーバーから返されたコンテンツをページに書き込む
参考にしてください。 http://blog.csdn.net/gubenpeiyuan/article/details/53364135
1. 最初にファイルを紹介

// Declare File in demo-page.ts
import {File} from "@ionic-native/file" ;

@Component({
  selector: 'demo-page',
  templateUrl: 'demo-page.html',
  providers: [File]
})

export class DemoPage {
    constructor(private file: File) {}
}

2. ファイルを作成する

//demo-page.ts

this.fileUrl = this.file.externalCacheDirectory;
let fe = await this.file.createFile(this.fileUrl, "demoTest.html", true);

3. ファイルの書き込み

this.writeFile(fe, this.content);
writeFile(fileEntry, data) {
    fileEntry.createWriter((fileWriter) => {
      fileWriter.onwriteend = () => {
         console.log("success file write: " + e.toString());
      };


      fileWriter.onerror = function (e) {
        console.log("Failed file write: " + e.toString());
      };
      // If data object is not passed in,
      // create a new Blob instead.
      let dataObj = new Blob([data], {type: 'text/plain'});
      fileWriter.write(dataObj);
    });
  }

II. angular2でのiframeの使用

//demo.html


    
  



//demo.ts
this.fileUrl = this.file.externalCacheDirectory;
let iframe= this.fileUrl + "demoTest.html";
import {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser'; writeFile(fileEntry, data) { fileEntry.createWriter((fileWriter) => { fileWriter.onwriteend = () => { //If the write is successful, pass the processed and safe file address to the iframe, add a timestamp, and make the iframe automatically update its contents this.iframe = this.domSanitizer.bypassSecurityTrustResourceUrl(this.resultFile + "?dummyVar=" + (new Date()).getTime()); }; fileWriter.onerror = function (e) { console.log("Failed file write: " + e.toString()); }; // If data object is not passed in, // create a new Blob instead. let dataObj = new Blob([data], {type: 'text/plain'}); fileWriter.write(dataObj); }); }