Добавить <script>контент с помощью JavaScript (Логин zendesk) - PullRequest
0 голосов
/ 05 июня 2018

У меня есть приложение React, в которое я добавляю скрипт zendesk, который будет отображаться только в том случае, если в систему вошел пользователь определенного типа.

Я также хочу использовать автоматический вход в систему, предложенный zendesk: https://developer.zendesk.com/embeddables/docs/widget/api#content => ze.identify

Я не знаю, как это сделать.Вот мой код плагина zendesk, и мне нужно добавить его сразу после:

// Specify which user can have Zendesk
        if (this.props.user.organisation === "organisationName") {
            // Start of Zendesk Chat Script
            const script = document.createElement("script");

            script.src = "myzendesklink";
            script.async = true;
            script.id = "zendesk"

            console.log()
            document.body.appendChild(script);
            //Something here for login
            const scriptLogin = document.createElement("script");

            document.body.appendChild(scriptLogin);
            // End of Zendesk Chat Script
        }

И код, который я хочу добавить:

<script>
  zE(function() {
    zE.identify({
      name: 'John Citizen',
      email: 'john@example.com',
      organization: 'VIP'
    });
  });
</script>

Первая часть в порядке и работаетОднако, во-вторых, я борюсь с этим.

Если кто-нибудь знает, как добавить этот скрипт, я буду рад узнать :), спасибо сообществу

1 Ответ

0 голосов
/ 05 июня 2018

Основываясь на комментарии @CBroe, вы можете попробовать что-то вроде этого:

if (this.props.user.organisation === "organisationName") {
    // Start of Zendesk Chat Script
    const script = document.createElement("script");

    script.text = "zE(function() { \
        zE.identify({ \
            name: 'John Citizen', \
            email: 'john@example.com', \
            organization: 'VIP' \
        });
    });";

    document.body.appendChild(script);

    // ...
}
...