2017-09-25 4 views
-1

Atm Ich speichere einfache Zeichenfolgen im lokalen Speicher. Aber das Problem ist jetzt, ich möchte Videos/Bilder im lokalen Speicher speichern. Da localStorage jedoch nur Strings unterstützt, sehe ich nicht, wie dies möglich wäre.Speichern Sie ein Video im lokalen Speicher

Wenn Sie mit Codebeispiel liefern könnten, wäre das gut! sagte

<form #userForm = "ngForm" (ngSubmit)="onSubmit(userForm.value)"> 
<div class="form-group"> 
     <label for="exampleInputFile">File input</label> 
     <input type="file" class="form-control-file" id="image" aria-describedby="fileHelp" accept="image/*, video/*" ng name="image" ngModel> 
     <small id="fileHelp" class="form-text text-muted"></small> 
    </div>  
</form> 

Add-profile.components.ts

onSubmit(value: any){ 
    localStorage.setItem(this.getId(), JSON.stringify(value)); 
    } 
+1

Die eigentliche Frage wäre: Warum machst du das? Sie können eine Handvoll MBs (https://stackoverflow.com/questions/2989284/what-is-the-max-size-of-localstorage-values) im lokalen Speicher speichern. Wenn Sie Binärdaten als String speichern möchten, kodieren Sie die Daten beispielsweise in base64. Aber immer noch keine gute Idee. – CodeCaster

+0

Ich mache das als eine temporäre Lösung, weil ich Server/Datenbank zu diesem Zeitpunkt nicht verwenden soll. Ich werde die lokale Speicherimplementierung später auf den Server/die Datenbank verschieben. – Amar

Antwort

0

https://github.com/ninjatronic/angular-base64

Verwendung so etwas wie dies das Bild zu konvertieren, wie CodeCaster base64. Aber es ist eine schlechte Idee, und Sie können keinen Platz mehr haben und es wird sowieso nicht funktionieren. Wenn ich mich richtig erinnere (Doppelprüfung), aber es ist 10mb pro Localspeicher, so dass ein Video dort nicht speichern kann (kleines Video von geringer Qualität vielleicht).

Warum verwenden Sie eine lokale db nicht vorübergehend?

+0

Aber so oder so muss ich zu base64 konvertieren? Das ist, wenn ich lokale db oder lokalen Speicher verwende – Amar

Verwandte Themen