mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-23 22:01:20 -08:00
chore: Optimize configuration updates in Danmuku and Setting classes
This commit is contained in:
1 parent
2c618bc7b4
commit
8a9132ea91
4 files changed
+68
-45
No files matched your search
@@ -395,6 +395,7 @@ class Danmuku {
|
|||||||
}
|
}
|
||||||
// 动态配置
|
// 动态配置
|
||||||
config(option) {
|
config(option) {
|
||||||
|
console.log("option", option);
|
||||||
const { clamp } = this.utils;
|
const { clamp } = this.utils;
|
||||||
const { $controlsCenter } = this.art.template;
|
const { $controlsCenter } = this.art.template;
|
||||||
this.option = Object.assign({}, Danmuku.option, this.option, option);
|
this.option = Object.assign({}, Danmuku.option, this.option, option);
|
||||||
@@ -407,8 +408,11 @@ class Danmuku {
|
|||||||
this.option.mount = this.option.mount || $controlsCenter;
|
this.option.mount = this.option.mount || $controlsCenter;
|
||||||
// 重新计算弹幕字体大小,需要重新渲染
|
// 重新计算弹幕字体大小,需要重新渲染
|
||||||
if (option.fontSize) {
|
if (option.fontSize) {
|
||||||
this.option.fontSize = this.getFontSize(this.option.fontSize);
|
const fontSize = this.getFontSize(this.option.fontSize);
|
||||||
this.reset();
|
if (fontSize !== this.option.fontSize) {
|
||||||
|
this.option.fontSize = fontSize;
|
||||||
|
this.reset();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// 通过配置项控制弹幕的显示和隐藏
|
// 通过配置项控制弹幕的显示和隐藏
|
||||||
if (this.option.visible) this.show();
|
if (this.option.visible) this.show();
|
||||||
@@ -833,20 +837,22 @@ class Setting {
|
|||||||
art.on("fullscreen", (state)=>this.onFullscreen(state));
|
art.on("fullscreen", (state)=>this.onFullscreen(state));
|
||||||
art.on("fullscreenWeb", (state)=>this.onFullscreen(state));
|
art.on("fullscreenWeb", (state)=>this.onFullscreen(state));
|
||||||
}
|
}
|
||||||
static icons = {
|
static get icons() {
|
||||||
$on: (0, _onSvgDefault.default),
|
return {
|
||||||
$off: (0, _offSvgDefault.default),
|
$on: (0, _onSvgDefault.default),
|
||||||
$config: (0, _configSvgDefault.default),
|
$off: (0, _offSvgDefault.default),
|
||||||
$style: (0, _styleSvgDefault.default),
|
$config: (0, _configSvgDefault.default),
|
||||||
$mode_0_off: (0, _mode0OffSvgDefault.default),
|
$style: (0, _styleSvgDefault.default),
|
||||||
$mode_0_on: (0, _mode0OnSvgDefault.default),
|
$mode_0_off: (0, _mode0OffSvgDefault.default),
|
||||||
$mode_1_off: (0, _mode1OffSvgDefault.default),
|
$mode_0_on: (0, _mode0OnSvgDefault.default),
|
||||||
$mode_1_on: (0, _mode1OnSvgDefault.default),
|
$mode_1_off: (0, _mode1OffSvgDefault.default),
|
||||||
$mode_2_off: (0, _mode2OffSvgDefault.default),
|
$mode_1_on: (0, _mode1OnSvgDefault.default),
|
||||||
$mode_2_on: (0, _mode2OnSvgDefault.default),
|
$mode_2_off: (0, _mode2OffSvgDefault.default),
|
||||||
$check_on: (0, _checkOnSvgDefault.default),
|
$mode_2_on: (0, _mode2OnSvgDefault.default),
|
||||||
$check_off: (0, _checkOffSvgDefault.default)
|
$check_on: (0, _checkOnSvgDefault.default),
|
||||||
};
|
$check_off: (0, _checkOffSvgDefault.default)
|
||||||
|
};
|
||||||
|
}
|
||||||
get option() {
|
get option() {
|
||||||
return this.danmuku.option;
|
return this.danmuku.option;
|
||||||
}
|
}
|
||||||
@@ -1132,8 +1138,9 @@ class Setting {
|
|||||||
onChange: (index)=>{
|
onChange: (index)=>{
|
||||||
const { $opacityValue } = this.template;
|
const { $opacityValue } = this.template;
|
||||||
$opacityValue.textContent = `${index}%`;
|
$opacityValue.textContent = `${index}%`;
|
||||||
this.danmuku.config({
|
const value = index / 100;
|
||||||
opacity: index / 100
|
if (value !== this.option.opacity) this.danmuku.config({
|
||||||
|
opacity: value
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -1149,8 +1156,9 @@ class Setting {
|
|||||||
const margin = this.MARGIN[index];
|
const margin = this.MARGIN[index];
|
||||||
const { $marginValue } = this.template;
|
const { $marginValue } = this.template;
|
||||||
$marginValue.textContent = margin.name;
|
$marginValue.textContent = margin.name;
|
||||||
this.danmuku.config({
|
const value = margin.value;
|
||||||
margin: margin.value
|
if (value[0] !== this.option.margin[0] || value[1] !== this.option.margin[1]) this.danmuku.config({
|
||||||
|
margin: value
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -1161,13 +1169,14 @@ class Setting {
|
|||||||
container: this.template.$fontSizeSlider,
|
container: this.template.$fontSizeSlider,
|
||||||
findIndex: ()=>{
|
findIndex: ()=>{
|
||||||
const { clientHeight } = this.art.template.$player;
|
const { clientHeight } = this.art.template.$player;
|
||||||
if (typeof this.option.fontSize === "number") return Math.round(this.option.fontSize / clientHeight * 100) || 5;
|
return Math.round(this.option.fontSize / clientHeight * 100) || 5;
|
||||||
else return Math.round(this.option.fontSize.replace("%", "")) || 5;
|
|
||||||
},
|
},
|
||||||
onChange: (index)=>{
|
onChange: (index)=>{
|
||||||
const { $fontSizeValue } = this.template;
|
const { $fontSizeValue } = this.template;
|
||||||
|
const { clientHeight } = this.art.template.$player;
|
||||||
$fontSizeValue.textContent = `${index}%`;
|
$fontSizeValue.textContent = `${index}%`;
|
||||||
this.danmuku.config({
|
const percent = Math.round(this.option.fontSize / clientHeight * 100);
|
||||||
|
if (index !== percent) this.danmuku.config({
|
||||||
fontSize: `${index}%`
|
fontSize: `${index}%`
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -1184,8 +1193,9 @@ class Setting {
|
|||||||
const speed = this.SPEED[index];
|
const speed = this.SPEED[index];
|
||||||
const { $speedValue } = this.template;
|
const { $speedValue } = this.template;
|
||||||
$speedValue.textContent = speed.name;
|
$speedValue.textContent = speed.name;
|
||||||
this.danmuku.config({
|
const value = speed.value;
|
||||||
speed: speed.value
|
if (value !== this.option.speed) this.danmuku.config({
|
||||||
|
speed: value
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAIwB;AAJxB;;AACA;;AACA;;AAEe,SAAS,uBAAuB,MAAM;IACjD,OAAO,CAAC;QACJ,MAAM,UAAU,IAAI,CAAA,GAAA,uBAAO,AAAD,EAAE,KAAK;QACjC,MAAM,UAAU,IAAI,CAAA,GAAA,uBAAO,AAAD,EAAE,KAAK;QAEjC,IAAI,QAAQ,MAAM,CAAC,OAAO,EACtB,CAAA,GAAA,uBAAO,AAAD,EAAE,KAAK,SAAS,QAAQ,MAAM,CAAC,OAAO;QAGhD,OAAO;YACH,MAAM;YACN,MAAM,QAAQ,IAAI,CAAC,IAAI,CAAC;YACxB,MAAM,QAAQ,IAAI,CAAC,IAAI,CAAC;YACxB,QAAQ,QAAQ,MAAM,CAAC,IAAI,CAAC;YAC5B,MAAM,QAAQ,IAAI,CAAC,IAAI,CAAC;YACxB,MAAM,QAAQ,IAAI,CAAC,IAAI,CAAC;YACxB,OAAO,QAAQ,KAAK,CAAC,IAAI,CAAC;YAC1B,OAAO,QAAQ,KAAK,CAAC,IAAI,CAAC;YAC1B,IAAI,UAAS;gBACT,OAAO,QAAQ,MAAM;YACzB;YACA,IAAI,UAAS;gBACT,OAAO,QAAQ,MAAM;YACzB;YACA,IAAI,UAAS;gBACT,OAAO,QAAQ,MAAM;YACzB;QACJ;IACJ;AACJ;AAEA,uBAAuB,KAAK,GAAG,CAAA,GAAA,uBAAO,AAAD,EAAE,KAAK;AAE5C,IAAI,OAAO,WAAW,aAClB,MAAM,CAAC,yBAAyB,GAAG;;;;;ACtCvC;AACA;;AAEe,MAAM;IACjB,YAAY,GAAG,EAAE,MAAM,CAAE;QACrB,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG;QAElC,IAAI,CAAC,KAAK,GAAG,YAAY,KAAK,EAAE,MAAM;QACtC,IAAI,CAAC,SAAS,GAAG,YAAY,SAAS,EAAE,QAAQ;QAChD,IAAI,CAAC,QAAQ,GAAG,SAAS,QAAQ,EAAE,QAAQ;QAC3C,IAAI,CAAC,OAAO,GAAG,SAAS,OAAO,EAAE,QAAQ;QAEzC,IAAI,CAAC,GAAG,GAAG;QACX,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,SAAS;QAC3B,IAAI,CAAC,KAAK,GAAG,EAAE,EAAE,SAAS;QAC1B,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,WAAW;QAC7B,IAAI,CAAC,KAAK,GAAG,EAAE,EAAE,WAAW;QAC5B,IAAI,CAAC,MAAM,GAAG,OAAO,OAAO;QAC5B,IAAI,CAAC,MAAM,GAAG,OAAO,OAAO;QAC5B,IAAI,CAAC,KAAK,GAAG,MAAM,MAAM;QACzB,IAAI,CAAC,MAAM,CAAC,SAAS,OAAO;QAE5B,+BAA+B;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,IAAI,eAAe,CAAC,IAAI,KAAK;YAAC,CAAA,GAAA,sBAAU,AAAD;SAAE;QAElE,SAAS;QACT,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;QACjC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;QAErC,OAAO;QACP,IAAI,EAAE,CAAC,cAAc,IAAI,CAAC,KAAK;QAC/B,IAAI,EAAE,CAAC,iBAAiB,IAAI,CAAC,KAAK;QAClC,IAAI,EAAE,CAAC,eAAe,IAAI,CAAC,IAAI;QAC/B,IAAI,EAAE,CAAC,iBAAiB,IAAI,CAAC,IAAI;QACjC,IAAI,EAAE,CAAC,WAAW,IAAI,CAAC,OAAO;QAC9B,IAAI,EAAE,CAAC,UAAU,IAAI,CAAC,KAAK;QAE3B,SAAS;QACT,IAAI,CAAC,IAAI;IACb;IAEA,OAAO;IACP,WAAW,SAAS;QAChB,OAAO;YACH,SAAS,EAAE;YACX,OAAO;YACP,QAAQ;gBAAC;gBAAI;aAAM;YACnB,SAAS;YACT,OAAO;YACP,MAAM;YACN,OAAO;gBAAC;gBAAG;gBAAG;aAAE;YAChB,UAAU;YACV,aAAa;YACb,qBAAqB;YACrB,OAAO;YACP,SAAS;YACT,QAAQ,EAAE;YACV,QAAQ,IAAM;YACd,YAAY,IAAM;YAClB,eAAe,IAAM;YACrB,SAAS;YACT,WAAW;YACX,UAAU;YACV,OAAO;QACX;IACJ;IAEA,OAAO;IACP,WAAW,SAAS;QAChB,OAAO;YACH,SAAS;YACT,OAAO;YACP,QAAQ;YACR,SAAS;YACT,OAAO;YACP,MAAM;YACN,OAAO;YACP,UAAU;YACV,aAAa;YACb,qBAAqB;YACrB,OAAO;YACP,SAAS;YACT,QAAQ;YACR,QAAQ;YACR,YAAY;YACZ,eAAe;YACf,SAAS;YACT,WAAW;YACX,UAAU;YACV,OAAO;QACX;IACJ;IAEA,SAAS;IACT,WAAW,UAAU;QACjB,OAAO,CAAC;;;;;;;;;;;;;QAaR,CAAC;IACL;IAEA,gCAAgC;IAChC,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,iBAAiB;IAC9C;IAEA,UAAU;IACV,IAAI,YAAY;QACZ,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK;QAC5B,MAAM,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QACnC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,OAAO;QAErC,IAAI,OAAO,UAAU,UACjB,OAAO,MAAM,OAAO,GAAG;QAG3B,IAAI,OAAO,UAAU,YAAY,MAAM,QAAQ,CAAC,MAAM;YAClD,MAAM,QAAQ,WAAW,SAAS;YAClC,OAAO,MAAM,eAAe,OAAO,GAAG;QAC1C;QAEA,OAAO,QAAQ,MAAM,CAAC,MAAM,CAAC,EAAE;IACnC;IAEA,UAAU;IACV,IAAI,eAAe;QACf,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK;QAC5B,MAAM,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QACnC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,OAAO;QAErC,IAAI,OAAO,UAAU,UACjB,OAAO,MAAM,OAAO,GAAG;QAG3B,IAAI,OAAO,UAAU,YAAY,MAAM,QAAQ,CAAC,MAAM;YAClD,MAAM,QAAQ,WAAW,SAAS;YAClC,OAAO,MAAM,eAAe,OAAO,GAAG;QAC1C;QAEA,OAAO,QAAQ,MAAM,CAAC,MAAM,CAAC,EAAE;IACnC;IAEA,OAAO;IACP,MAAM,OAAO;QACT,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK;QAElC,IAAI;YACA,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,YAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO;iBACpC,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,YAC3C,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO;iBACpC,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,UACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA,GAAA,mCAAyB,AAAD,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;iBAEjE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO;YAGrC,YAAY,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG;YAExC,IAAI,CAAC,KAAK,GAAG,EAAE,EAAE,WAAW;YAC5B,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,QAAQ;YACtC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAU,IAAI,CAAC,IAAI,CAAC,SAAS,mBAAmB;YACrE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iCAAiC,IAAI,CAAC,KAAK;QAEzD,qCAAqC;QACrC,2DAA2D;QAC/D,EAAE,OAAO,OAAO;YACZ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gCAAgC;YAC9C,MAAM;QACV;QAEA,OAAO,IAAI;IACf;IAEA,eAAe;IACf,KAAK,KAAK,EAAE;QACR,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK;QAE5B,IAAI,CAAC,SAAS,CAAC,OAAO;YAClB,MAAM;YACN,MAAM;YACN,OAAO;YACP,MAAM;YACN,QAAQ;YACR,OAAO;YACP,QAAQ;QACZ;QAEA,cAAc;QACd,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI;QAEnC,6BAA6B;QAC7B,IAAI,MAAM,IAAI,EACV,MAAM,IAAI,GAAG,MAAM,MAAM,IAAI,EAAE,GAAG;aAElC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG;QAGxC,sBAAsB;QACtB,IAAI,MAAM,IAAI,KAAK,WACf,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;QAGjC,uBAAuLine truncated
|
{"mappings":"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 truncated
|
||||||
@@ -254,6 +254,7 @@ export default class Danmuku {
|
|||||||
|
|
||||||
// 动态配置
|
// 动态配置
|
||||||
config(option) {
|
config(option) {
|
||||||
|
console.log('option', option);
|
||||||
const { clamp } = this.utils;
|
const { clamp } = this.utils;
|
||||||
const { $controlsCenter } = this.art.template;
|
const { $controlsCenter } = this.art.template;
|
||||||
|
|
||||||
@@ -269,8 +270,11 @@ export default class Danmuku {
|
|||||||
|
|
||||||
// 重新计算弹幕字体大小,需要重新渲染
|
// 重新计算弹幕字体大小,需要重新渲染
|
||||||
if (option.fontSize) {
|
if (option.fontSize) {
|
||||||
this.option.fontSize = this.getFontSize(this.option.fontSize);
|
const fontSize = this.getFontSize(this.option.fontSize);
|
||||||
this.reset();
|
if (fontSize !== this.option.fontSize) {
|
||||||
|
this.option.fontSize = fontSize;
|
||||||
|
this.reset();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 通过配置项控制弹幕的显示和隐藏
|
// 通过配置项控制弹幕的显示和隐藏
|
||||||
|
|||||||
@@ -382,9 +382,12 @@ export default class Setting {
|
|||||||
onChange: (index) => {
|
onChange: (index) => {
|
||||||
const { $opacityValue } = this.template;
|
const { $opacityValue } = this.template;
|
||||||
$opacityValue.textContent = `${index}%`;
|
$opacityValue.textContent = `${index}%`;
|
||||||
this.danmuku.config({
|
const value = index / 100;
|
||||||
opacity: index / 100,
|
if (value !== this.option.opacity) {
|
||||||
});
|
this.danmuku.config({
|
||||||
|
opacity: value,
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -404,9 +407,12 @@ export default class Setting {
|
|||||||
const margin = this.MARGIN[index];
|
const margin = this.MARGIN[index];
|
||||||
const { $marginValue } = this.template;
|
const { $marginValue } = this.template;
|
||||||
$marginValue.textContent = margin.name;
|
$marginValue.textContent = margin.name;
|
||||||
this.danmuku.config({
|
const value = margin.value;
|
||||||
margin: margin.value,
|
if (value[0] !== this.option.margin[0] || value[1] !== this.option.margin[1]) {
|
||||||
});
|
this.danmuku.config({
|
||||||
|
margin: value,
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -417,18 +423,18 @@ export default class Setting {
|
|||||||
container: this.template.$fontSizeSlider,
|
container: this.template.$fontSizeSlider,
|
||||||
findIndex: () => {
|
findIndex: () => {
|
||||||
const { clientHeight } = this.art.template.$player;
|
const { clientHeight } = this.art.template.$player;
|
||||||
if (typeof this.option.fontSize === 'number') {
|
return Math.round((this.option.fontSize / clientHeight) * 100) || 5;
|
||||||
return Math.round((this.option.fontSize / clientHeight) * 100) || 5;
|
|
||||||
} else {
|
|
||||||
return Math.round(this.option.fontSize.replace('%', '')) || 5;
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
onChange: (index) => {
|
onChange: (index) => {
|
||||||
const { $fontSizeValue } = this.template;
|
const { $fontSizeValue } = this.template;
|
||||||
|
const { clientHeight } = this.art.template.$player;
|
||||||
$fontSizeValue.textContent = `${index}%`;
|
$fontSizeValue.textContent = `${index}%`;
|
||||||
this.danmuku.config({
|
const percent = Math.round((this.option.fontSize / clientHeight) * 100);
|
||||||
fontSize: `${index}%`,
|
if (index !== percent) {
|
||||||
});
|
this.danmuku.config({
|
||||||
|
fontSize: `${index}%`,
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -444,9 +450,12 @@ export default class Setting {
|
|||||||
const speed = this.SPEED[index];
|
const speed = this.SPEED[index];
|
||||||
const { $speedValue } = this.template;
|
const { $speedValue } = this.template;
|
||||||
$speedValue.textContent = speed.name;
|
$speedValue.textContent = speed.name;
|
||||||
this.danmuku.config({
|
const value = speed.value;
|
||||||
speed: speed.value,
|
if (value !== this.option.speed) {
|
||||||
});
|
this.danmuku.config({
|
||||||
|
speed: value,
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user