Javascript 使用语法错误向Gatsby添加脚本标记
我正在尝试将watson chatbot添加到我的网站,所需的脚本标记如下:Javascript 使用语法错误向Gatsby添加脚本标记,javascript,reactjs,gatsby,ibm-watson,Javascript,Reactjs,Gatsby,Ibm Watson,我正在尝试将watson chatbot添加到我的网站,所需的脚本标记如下: window.watsonAssistantChatOptions={ 集成ID:,//此集成的ID。 地区:“eu gb”,//您的集成所在的地区。 serviceInstanceID:,//服务实例的ID。 onLoad:function(instance){instance.render();} }; setTimeout(函数(){ const t=document.createElement('script
window.watsonAssistantChatOptions={
集成ID:,//此集成的ID。
地区:“eu gb”,//您的集成所在的地区。
serviceInstanceID:,//服务实例的ID。
onLoad:function(instance){instance.render();}
};
setTimeout(函数(){
const t=document.createElement('script');
t、 src=”https://web-chat.global.assistant.watson.appdomain.cloud/loadWatsonAssistantChat.js";
文件.标题.附件(t);
});
这是我的密码:
从“React”导入React
从“道具类型”导入道具类型
从“反应头盔”导入头盔
函数Watson(){
返回(
window.watsonAssistantChatOptions={
集成ID:“e9106019-f76a-46ea-bd38-1F9A364D8E”,//此集成的ID。
地区:“eu gb”,//您的集成所在的地区。
serviceInstanceID:“c688c7e0-4a4f-45ab-9131-6ae96ec602a3”,//服务实例的ID。
onLoad:function(instance){instance.render();}
};
setTimeout(函数(){
const t=document.createElement('script');
t、 src=”https://web-chat.global.assistant.watson.appdomain.cloud/loadWatsonAssistantChat.js";
文件.标题.附件(t);
});
)
}
导出默认值
我有编译错误。我甚至尝试用{}将代码包装到脚本中,但仍然没有成功:
{
window.watsonAssistantChatOptions={
集成ID:“e9106019-f76a-46ea-bd38-1F9A364D8E”,//此集成的ID。
地区:“eu gb”,//您的集成所在的地区。
serviceInstanceID:“c688c7e0-4a4f-45ab-9131-6ae96ec602a3”,//服务实例的ID。
onLoad:function(instance){instance.render();}
};
setTimeout(函数(){
const t=document.createElement('script');
t、 src=”https://web-chat.global.assistant.watson.appdomain.cloud/loadWatsonAssistantChat.js";
文件.标题.附件(t);
});
}
关于我遗漏了什么有什么想法吗?当组件被大括号({}
)包裹时,您需要在组件内部使用反勾号(`
):
{`window.watsonAssistantChatOptions={
集成ID:“e9106019-f76a-46ea-bd38-1F9A364D8E”,//此集成的ID。
地区:“eu gb”,//您的集成所在的地区。
serviceInstanceID:“c688c7e0-4a4f-45ab-9131-6ae96ec602a3”,//服务实例的ID。
onLoad:function(instance){instance.render();}
};
setTimeout(函数(){
const t=document.createElement('script');
t、 src=”https://web-chat.global.assistant.watson.appdomain.cloud/loadWatsonAssistantChat.js";
文件.标题.附件(t);
});
`}
使用上面的代码片段,您的代码将被粘贴为原始字符串,但由于位于
标记中,它将被解释并作为公共脚本粘贴到
中
对我的代码片段使用gatsby构建
:
您遇到了什么错误?应为表达式,意外标记。你是说
{'}}
还是&rbrace代码>?这是第一个示例中的错误还是第二个示例中的错误?我需要知道你在第一个例子中遇到的错误,因为你不需要用大括号括起来。我在帖子中添加了一张照片,所以你可以在我的编辑中看到它的外观。我发现的唯一方法是使用盖茨比网站上所说的“危险的西汀HTML”。你可以在这页的底部找到它
<Helmet>
<script type='text/javascript'>
{` window.watsonAssistantChatOptions = {
integrationID: "e9106019-f76a-46ea-bd38-1f9a364d8d6e", // The ID of this integration.
region: "eu-gb", // The region your integration is hosted in.
serviceInstanceID: "c688c7e0-4a4f-45ab-9131-6ae96ec602a3", // The ID of your service instance.
onLoad: function(instance) { instance.render(); }
};
setTimeout(function(){
const t=document.createElement('script');
t.src="https://web-chat.global.assistant.watson.appdomain.cloud/loadWatsonAssistantChat.js";
document.head.appendChild(t);
});
`}
</script>
</Helmet>