Javascript 基于语言变化改变视频源的使用效果

Javascript 基于语言变化改变视频源的使用效果,javascript,html,reactjs,ecmascript-6,Javascript,Html,Reactjs,Ecmascript 6,我试着播放不同的关于语言变化的视频。但是总是播放同一个视频 useEffect(() => { console.log("language changed: ", i18n.language); vidSrc2.current.setAttribute( "src", require(`../assets/video/${i18n.language}/vid.mp4`) ); window.addEventListener("langChange", () => { v

我试着播放不同的关于语言变化的视频。但是总是播放同一个视频

useEffect(() => {
console.log("language changed: ", i18n.language);

vidSrc2.current.setAttribute(
  "src",
  require(`../assets/video/${i18n.language}/vid.mp4`)
);
window.addEventListener("langChange", () => {
  vidSrc2.current.setAttribute(
    "src",
    require(`../assets/video/${i18n.language}/vid.mp4`)
  );
 });
}, [i18n.language]);

<video
      ref={videoRef2}
      style={{
        objectFit: "cover",
        width: "100vw",
        height: window.screen.availHeight === 1080 ? "74vh" : "77vh"
      }}
      controls
      controlsList="nofullscreen nodownload"
      preload="true"
      disablePictureInPicture
    >
      <source
        ref={vidSrc2}
        type="video/mp4"
      />
    </video>
useffect(()=>{
log(“语言更改:”,i18n.language);
vidSrc2.current.setAttribute(
“src”,
需要(`../assets/video/${i18n.language}/vid.mp4`)
);
window.addEventListener(“langChange”,()=>{
vidSrc2.current.setAttribute(
“src”,
需要(`../assets/video/${i18n.language}/vid.mp4`)
);
});
},[i18n.语言];

任何帮助都将不胜感激。

i18n.language是一个状态变量吗?不,我使用的是i18n软件包,这就是获取当前语言的方式。