Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitff38756

Browse files
committed
Experimental solution with localstorage.
1 parenta59ffc1 commitff38756

File tree

5 files changed

+56
-2
lines changed

5 files changed

+56
-2
lines changed

‎package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name":"laravel-file-manager",
2+
"name":"codeperl/laravel-file-manager",
33
"version":"3.0.3",
44
"description":"File manager for Laravel",
55
"keywords": [

‎src/FileManager.vue

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ import ContextMenu from './components/blocks/ContextMenu.vue';
5050
importNotificationBlockfrom'./components/blocks/NotificationBlock.vue';
5151
// Mixins
5252
importtranslatefrom'./mixins/translate';
53+
importlocalstorefrom"./mixins/localstore";
5354
5455
exportdefault {
5556
name:'FileManager',
@@ -86,6 +87,11 @@ export default {
8687
created() {
8788
// manual settings
8889
this.$store.commit('fm/settings/manualSettings',this.settings);
90+
/**
91+
* FIXME: Manual settings set the vuex settings store but to initiate axios, that value is not available
92+
* in js files, I am using localstorage to manage those settings.
93+
*/
94+
localstore.setStorage(localstore.axiosSettingType,this.settings);
8995
9096
// initiate Axios
9197
this.$store.commit('fm/settings/initAxiosSettings');

‎src/http/axios.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
importaxiosfrom'axios';
2+
importlocalstorefrom'../mixins/localstore';
3+
4+
letsettings=localstore.getStorage(localstore.axiosSettingType);
5+
letobj={};
6+
7+
if(settings.data.baseURL)obj.baseURL=settings.data.baseURL;
8+
if(settings.data.headers)obj.headers=settings.data.headers;
29

310
// set new axios instance
4-
exportdefaultaxios.create();
11+
exportdefaultaxios.create(obj);

‎src/mixins/localstore.js

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
exportdefault{
2+
axiosSettingType:'axiosSettings',
3+
4+
setStorage:function(key,data){
5+
this.removeStorage(key);
6+
letd=newDate();
7+
data={
8+
'id':Math.random()*d.getTime(),
9+
'data':data,
10+
'time':d.getTime()
11+
};
12+
data=JSON.stringify(data);
13+
data=encodeURIComponent(btoa(data));
14+
returnlocalStorage.setItem('@'+key,data);
15+
},
16+
17+
getStorage:function(key){
18+
letjsonData=localStorage.getItem('@'+key);
19+
if(jsonData!=null){
20+
jsonData=atob(decodeURIComponent(jsonData));
21+
jsonData=JSON.parse(jsonData);
22+
returnjsonData.data;
23+
}else{
24+
returnjsonData;
25+
}
26+
},
27+
28+
removeStorage:function(key){
29+
returnlocalStorage.removeItem(key);
30+
},
31+
removeAllStorage:function(){
32+
for(varkeyinlocalStorage){
33+
if(key.indexOf("@")==0){
34+
localStorage.removeItem(key);
35+
}
36+
}
37+
},
38+
}

‎src/store/actions.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
/* eslint-disable max-len,prefer-destructuring,object-curly-newline */
22
importGETfrom'../http/get';
33
importPOSTfrom'../http/post';
4+
importlocalstorefrom"../mixins/localstore";
45

56
exportdefault{
67
/**
@@ -561,6 +562,8 @@ export default {
561562
commit('tree/clearTempArray');
562563
}
563564

565+
localstore.removeStorage(localstore.axiosSettingType);
566+
564567
commit('resetState');
565568
},
566569

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp