如何在React使用的JWPlayer错误提示信息中隐藏错误编码?
方案1:修改JW Player内置错误格式配置(推荐)
JW Player默认的错误展示模板是{message} (Error Code: {code}),你可以直接在customProps的intl配置里覆盖errorFormat字段,去掉错误码相关的占位符即可,修改后的代码如下:
const ReactJWPlayerContainer = props => { const [error, setError] = useState(""); const [errorNode, setErrorNode] = useState(null); const player = ()=> { return ( <ReactJWPlayer playlist={[props.playlist]} customProps={{ intl: { // 全局覆盖错误展示格式,只保留错误描述 errorFormat: '{message}', en: { errors: { badConnection: "This video cannot be played because of a problem with your internet connection.", cantLoadPlayer: "Sorry, the video player failed to load.", }, }, fr: { errors: { badConnection: "This video cannot be played because of a problem with your internet connection.", cantLoadPlayer: "Sorry, the video player failed to load.", }, }, }, }} /> ) } return ( <> {props.playlist && player()} </> ) }
方案2:CSS样式兜底隐藏
如果因为版本兼容问题方案1不生效,可以通过CSS选择器选中错误码所在的DOM节点直接隐藏,不需要修改JS逻辑:
/* 匹配JW Player错误弹窗里的错误码文本 */ .jw-error .jw-error-code { display: none !important; }
如果你的项目是CSS-in-JS方案,也可以把这段样式写在组件的样式模块里,保证作用域正确即可。
内容的提问来源于stack exchange,提问作者flash
相关产品推荐
相关产品推荐

