2016-07-11 6 views
0

Ich versuche, eine PDF aus einer URL mithilfe einer Webansicht anzuzeigen. Ich habe versucht, es mit dem src-Attribut und dem URL-Attribut zu laden. Ich habe auch versucht, es aus dem onLoaded-Ereignis in Javascript zu laden, aber immer noch kein Glück ... Gibt es eine bessere Möglichkeit, ein PDF-Dokument in einer Nativescript App zu laden? Das Webview lädt etwas kleines wie die Google URL ohne Probleme heraus. Hier ist ein Teil des Codes, den ich ausprobiert habe.Anzeigen einer PDF aus einer URL in Nativescript

// did not work 
<WebView row="0" id="eula-view" src="https://somewebsite/eula/foo.pdf"/> 

// did not work 
<WebView row="0" id="eula-view" url="https://somewebsite/eula/foo.pdf" /> 

//worked fine 
<WebView row="0" id="eula-view" url="http://google.com" /> 

Laden von JS anstatt von xml

//did not work 
exports.viewLoaded = function (args) {  
    var page = args.object; 
    var webview = page.getViewById("eula-view"); 
    webview.url = "https://somewebsite/eula/foo.pdf"; 
}; 

// worked fine 
exports.viewLoaded = function (args) {  
    var page = args.object; 
    var webview = page.getViewById("eula-view"); 
    webview.url = "http://google.com"; 
}; 
+0

Die Arbeits URL ist http, die nicht funktioniert https, vielleicht haben Sie die Einrichtung des ssl? –

+0

Leider machte das keinen Unterschied. –

Antwort

2

Ich habe für die Anzeige von PDF-Dateien auf iOS und Android ein NativeScript Plugin erstellt. Ich habe den Ansatz WebView mit Google Docs nicht selbst probiert, weil ich PDF-Dateien vom lokalen Gerät anzeigen muss und keine aktive Internetverbindung benötigen möchte.

Das Plugin ist nativescript-pdf-view. Nutzung ist wie folgt:

Plain NativeScript:

<Page 
xmlns="http://schemas.nativescript.org/tns.xsd" loaded="pageLoaded" 
xmlns:pdf="nativescript-pdf-view"> 
    <StackLayout> 
    <pdf:PDFView src="{{ pdfSrc }}"/> 
    </StackLayout> 
</Page> 

Angular 2

// somewhere in the JavaScript/TypeScript: 
import 'nativescript-pdf-view'; 

// in the view: 
<PDFView [src]="pdfSrc"></PDFView> 
+1

Vielen Dank für das Posten! Kann die PDF-Quelle immer noch eine URL sein? Oder muss es lokal für das Gerät sein? –

+1

Ich habe gerade in Ihrem Code verifiziert, dass URL-Quelle funktioniert. Ich habe dies als die Antwort markiert, da ich denke, dass es eine bessere Implementierung ist. Vielen Dank! –

+0

Keine Sorgen. Wenn Sie irgendwelche Fragen haben, zögern Sie nicht mich auf Github wissen, oder noch besser, machen Sie PRs! :) – Merott