ブラウザのJSからIntercomのユーザーを作成・更新する (React編)
以前Node.jsから操作する方法を調べました。ただ、ブラウザの情報などを取得できないので、やはりブラウザから取得する方法を試したいと思います。 ユーザーを作成・更新するスクリプト すごくザックリ書くとこんな風になります […]
広告ここから
広告ここまで
目次
以前Node.jsから操作する方法を調べました。ただ、ブラウザの情報などを取得できないので、やはりブラウザから取得する方法を試したいと思います。
ユーザーを作成・更新するスクリプト
すごくザックリ書くとこんな風になります。
const canUseDOM = !!(
(typeof window !== 'undefined' &&
window.document && window.document.createElement)
);
if (canUseDOM && window.Intercom) {
window.Intercom(
'update',
{
app_id: 'APP_ID',
email: '[email protected]'
}
)
}
実際にはwindow.Intercom
やwindow.document.createElement
を待機する必要がありますので、whileとかでいい感じにしてやってください。
Reactで実行する
Reactの場合、componentのライフサイクルを使えばいい感じにできます。
class Example extends Component {
componentDidUpdate = () => {
const { window } = this.props;
const canUseDOM = !!((typeof window !== 'undefined' && window.document && window.document.createElement))
if (canUseDOM && window.Intercom) {
window.Intercom(
'update',
{
app_id: 'APP_ID',
email: '[email protected]'
}
)
}
},
render = () => null;
}
const Wrapper = () => <Example window={window} />
実際に使っているコードとちょっと変えているので、うまく動かなかったらすみません。