2017-09-25 230 views
-1

Atm我將簡單的字符串保存在本地存儲中。但問題是現在我想將視頻/圖像保存到本地存儲。但由於localStorage僅支持字符串,我不明白這將是可能的。將視頻保存到本地存儲

如果您可以提供代碼示例,那就太好了!

<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> 

附加profile.components.ts

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

真正的問題是:你爲什麼要這樣做?您可以在本地存儲中存儲少量MB(https://stackoverflow.com/questions/2989284/what-is-the-max-size-of-localstorage-values)。如果要將二進制數據保存爲字符串,則需要對數據進行編碼,例如以base64編碼。但仍然不是一個好主意。 – CodeCaster

+0

我正在做這個臨時解決方案,因爲我不應該在這一點上使用服務器/數據庫。稍後我會將本地存儲實施移到服務器/數據庫。 – Amar

回答

0

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

使用這樣的事情,將圖像轉換爲Base64爲CodeCaster說。 但是這是一個糟糕的主意,而且你可能會用完空間並且無法正常工作。如果我沒有記錯(仔細檢查),但是每個本地存儲10mb,因此視頻不會保存在那裏(也許是微小的低質量視頻)。

爲什麼你暫時不使用本地數據庫?

+0

但無論哪種方式,我必須轉換爲base64?這就是如果我使用本地數據庫或本地存儲 – Amar