Improve settings performance

This commit is contained in:
the1812 2019-04-26 15:35:01 +08:00
parent 2526766c93
commit eb95f81abb
5 changed files with 127 additions and 52 deletions

View File

@ -1,6 +1,6 @@
// ==UserScript==
// @name Bilibili Evolved (Offline)
// @version 283.30
// @version 283.99
// @description Bilibili Evolved 的离线版, 所有功能都已内置于脚本中.
// @author Grant Howard, Coulomb-G
// @copyright 2019, Grant Howard (https://github.com/the1812) & Coulomb-G (https://github.com/Coulomb-G)
@ -128,15 +128,30 @@ function loadSettings()
{
for (const key in settings)
{
const value = GM_getValue(key, settings[key]);
let value = GM_getValue(key, settings[key]);
if (settings[key] !== undefined && value.constructor === Object)
{
settings[key] = Object.assign(settings[key], value);
}
else
{
settings[key] = value;
value = Object.assign(settings[key], value);
}
Object.defineProperty(settings, key, {
get()
{
return value;
},
set(newValue)
{
value = newValue;
GM_setValue(key, newValue);
},
});
// if (settings[key] !== undefined && value.constructor === Object)
// {
// settings[key] = Object.assign(settings[key], value);
// }
// else
// {
// settings[key] = value;
// }
}
for (const key in fixedSettings)
{
@ -145,10 +160,10 @@ function loadSettings()
}
function saveSettings(newSettings)
{
for (const key in settings)
{
GM_setValue(key, newSettings[key]);
}
// for (const key in settings)
// {
// GM_setValue(key, newSettings[key]);
// }
}
function onSettingsChange()
{

View File

@ -1,6 +1,6 @@
// ==UserScript==
// @name Bilibili Evolved (Preview Offline)
// @version 283.30
// @version 283.99
// @description Bilibili Evolved 的预览离线版, 可以抢先体验新功能, 并且所有功能都已内置于脚本中.
// @author Grant Howard, Coulomb-G
// @copyright 2019, Grant Howard (https://github.com/the1812) & Coulomb-G (https://github.com/Coulomb-G)
@ -128,15 +128,30 @@ function loadSettings()
{
for (const key in settings)
{
const value = GM_getValue(key, settings[key]);
let value = GM_getValue(key, settings[key]);
if (settings[key] !== undefined && value.constructor === Object)
{
settings[key] = Object.assign(settings[key], value);
}
else
{
settings[key] = value;
value = Object.assign(settings[key], value);
}
Object.defineProperty(settings, key, {
get()
{
return value;
},
set(newValue)
{
value = newValue;
GM_setValue(key, newValue);
},
});
// if (settings[key] !== undefined && value.constructor === Object)
// {
// settings[key] = Object.assign(settings[key], value);
// }
// else
// {
// settings[key] = value;
// }
}
for (const key in fixedSettings)
{
@ -145,10 +160,10 @@ function loadSettings()
}
function saveSettings(newSettings)
{
for (const key in settings)
{
GM_setValue(key, newSettings[key]);
}
// for (const key in settings)
// {
// GM_setValue(key, newSettings[key]);
// }
}
function onSettingsChange()
{

View File

@ -127,15 +127,30 @@ function loadSettings()
{
for (const key in settings)
{
const value = GM_getValue(key, settings[key]);
let value = GM_getValue(key, settings[key]);
if (settings[key] !== undefined && value.constructor === Object)
{
settings[key] = Object.assign(settings[key], value);
}
else
{
settings[key] = value;
value = Object.assign(settings[key], value);
}
Object.defineProperty(settings, key, {
get()
{
return value;
},
set(newValue)
{
value = newValue;
GM_setValue(key, newValue);
},
});
// if (settings[key] !== undefined && value.constructor === Object)
// {
// settings[key] = Object.assign(settings[key], value);
// }
// else
// {
// settings[key] = value;
// }
}
for (const key in fixedSettings)
{
@ -144,10 +159,10 @@ function loadSettings()
}
function saveSettings(newSettings)
{
for (const key in settings)
{
GM_setValue(key, newSettings[key]);
}
// for (const key in settings)
// {
// GM_setValue(key, newSettings[key]);
// }
}
function onSettingsChange()
{

View File

@ -127,15 +127,30 @@ function loadSettings()
{
for (const key in settings)
{
const value = GM_getValue(key, settings[key]);
let value = GM_getValue(key, settings[key]);
if (settings[key] !== undefined && value.constructor === Object)
{
settings[key] = Object.assign(settings[key], value);
}
else
{
settings[key] = value;
value = Object.assign(settings[key], value);
}
Object.defineProperty(settings, key, {
get()
{
return value;
},
set(newValue)
{
value = newValue;
GM_setValue(key, newValue);
},
});
// if (settings[key] !== undefined && value.constructor === Object)
// {
// settings[key] = Object.assign(settings[key], value);
// }
// else
// {
// settings[key] = value;
// }
}
for (const key in fixedSettings)
{
@ -144,10 +159,10 @@ function loadSettings()
}
function saveSettings(newSettings)
{
for (const key in settings)
{
GM_setValue(key, newSettings[key]);
}
// for (const key in settings)
// {
// GM_setValue(key, newSettings[key]);
// }
}
function onSettingsChange()
{

View File

@ -102,15 +102,30 @@ export function loadSettings()
{
for (const key in settings)
{
const value = GM_getValue(key, settings[key]);
let value = GM_getValue(key, settings[key]);
if (settings[key] !== undefined && value.constructor === Object)
{
settings[key] = Object.assign(settings[key], value);
}
else
{
settings[key] = value;
value = Object.assign(settings[key], value);
}
Object.defineProperty(settings, key, {
get()
{
return value;
},
set(newValue)
{
value = newValue;
GM_setValue(key, newValue);
},
});
// if (settings[key] !== undefined && value.constructor === Object)
// {
// settings[key] = Object.assign(settings[key], value);
// }
// else
// {
// settings[key] = value;
// }
}
for (const key in fixedSettings)
{
@ -119,10 +134,10 @@ export function loadSettings()
}
export function saveSettings(newSettings)
{
for (const key in settings)
{
GM_setValue(key, newSettings[key]);
}
// for (const key in settings)
// {
// GM_setValue(key, newSettings[key]);
// }
}
export function onSettingsChange()
{