添加 Google 翻译后无法编辑 SharePoint 页面

问题描述 投票:0回答:1

添加 Google 翻译后,我无法编辑 SharePoint 页面。

我遇到了以下错误。

下面是 SPFx React Web 部件中使用的 googleTranslateElement 的代码片段。

const initializeLanguageTranslateElement = async () => {
    const addScript = document.createElement('script');
    addScript.setAttribute(
      'src',
      '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'
    );
    document.body.appendChild(addScript);
    window["googleTranslateElementInit"] = await languageTranslateElementInit;
  }
const languageTranslateElementInit = async () => {
    new window["google"].translate.TranslateElement(
      {
        defaultLanguage: 'en',
        includedLanguages: 'en,fr,de,ja,es,ar,ru,zh-CN',
      },
      'google_language_translate_element'
    );
    await onChangeLanguageTranslation();
  };
 
const onChangeLanguageTranslation = () => {
    setTimeout(async () => {
      const languageDropdown = await document.querySelector('.goog-te-combo');
      if (languageDropdown) {
        languageDropdown["value"] = 'en';
        languageDropdown.addEventListener('change', () => {
          const selectedLanguageValue = languageDropdown["value"];
          // Translate the page immediately after changing the language
          window["google"].translate.TranslateElement({ pageLanguage: selectedLanguageValue }, 'google_language_translate_element');
        });
        languageDropdown.dispatchEvent(new Event("change"));
      }
    }, 1000);
  }
<div id="google_language_translate_element">

任何人都可以帮助我吗?

谢谢

sharepoint-online google-translate translate spfx sharepointframework
1个回答
0
投票

只需在 SPComponentLoader 中加载仅适用于 spfx 的 require js 文件即可:

  • 从“@microsoft/sp-loader”导入 { SPComponentLoader };
  • SPComponentLoader.loadScript(您的站点 url+ '/_layouts/15/require.js');
© www.soinside.com 2019 - 2024. All rights reserved.