javascript - 使用谷歌翻译为 React js 制作站点多语言支持

标签 javascript reactjs google-translate

对于简单的 html 项目,我可以简单地引用此链接。

https://www.w3schools.com/howto/howto_google_translate.asp

但我正在尝试在 React 应用程序中实现。所以我无法在 React 应用程序中复制代码。

componentDidMount() {
  googleTranslateElementInit(() => {
    new google.translate.TranslateElement({pageLanguage: 'en'}, 'google_translate_element');
    });
    const script = document.createElement("script");
    script.src = "//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit";
    script.async = true;
    document.body.appendChild(script);
}

并返回渲染元素。

  render() {
    return (
      <div id="google_translate_element"></div>
    );
  }

这向我显示错误提示 google ,未定义 googleTranslateElementInit。

如何在 React 应用程序中使用谷歌翻译? 还有可以翻译整个网站的 npm 包吗?

谢谢

最佳答案

将您的谷歌翻译脚本移动到项目的根 index.html

但是,您应该将以下代码留在您想要的位置:

render() {
    return (
      <div id="google_translate_element"></div>
    );
  }

轻松解决问题。

关于javascript - 使用谷歌翻译为 React js 制作站点多语言支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44118170/

相关文章:

javascript - 主题开发 : JavaScript not working when linked from functions. php

javascript - React Native setState 不是函数

javascript - 获取属性 'ref' 在类型 'IntrinsicAttributes' 错误上不存在

algorithm - 实现音译和音译建议的标准算法

python 请求从谷歌翻译下载不正确的声音文件

python - 为什么 "Googletrans.Translator"突然停止工作?

javascript - 哪种 React 生命周期方法可以很好地替代 componentWillRecieveProps?

javascript - 跨浏览器转换和转换问题

javascript - 需要刷新页面以查看刚刚开始的YouTube直播事件

javascript - 使图像叠加的 map View 适合容器传单的大小