Reactjs 通过脚本标记加载外部javascript
我正在尝试使用script标记动态加载脚本。但是我做不到 我的渲染方法如下Reactjs 通过脚本标记加载外部javascript,reactjs,Reactjs,我正在尝试使用script标记动态加载脚本。但是我做不到 我的渲染方法如下 render() { <div> <script type="text/javascript" language="javascript" src="//verify.authorize.net/anetseal/seal.js" ></script> <a href="http://www.authorize.net/" id="AuthorizeNet
render() {
<div>
<script type="text/javascript" language="javascript" src="//verify.authorize.net/anetseal/seal.js" ></script>
<a href="http://www.authorize.net/" id="AuthorizeNetText" target="_blank">Working. Yipee</a>
</div>
}
render(){
}
我试图使用危险的HTML,但也不起作用
我之所以需要它,是因为上面提到的脚本使用document.writeln。所以我希望它显示在当前的div中。我无法控制脚本。它来自第三方。您可以将
脚本
标记附加到您的身体上,如下所示:
componentDidMount() {
var addScript = document.createElement('script');
addScript.setAttribute('src', '//verify.authorize.net/anetseal/seal.js');
document.body.appendChild(addScript);
}
render() {
return (
<div>
<a href="http://www.authorize.net/" id="AuthorizeNetText" target="_blank">Working. Yipee</a>
</div>
);
}
componentDidMount(){
var addScript=document.createElement('script');
addScript.setAttribute('src','//verify.authorize.net/anetseal/seal.js');
document.body.appendChild(addScript);
}
render(){
返回(
);
}
我相信您可以更具体地说明脚本加载后应该做什么。这样的东西应该很适合你:
componentDidMount() {
var aScript = document.createElement('script');
aScript.type = 'text/javascript';
aScript.src = " /*URL Goes Here*/ ";
document.head.appendChild(aScript);
aScript.onload = function() {
document.getElementById(" /*DIV ID HERE*/ ").InnerHTML = /*YOUR CODE*/;
};
}
你可以试着用头盔
render(){
}
检查链接是否不适合meI,因为我不想将其附加到body元素中。我想将其附加到so div元素。如果我做document.getElementById('id').appendChild(脚本),它会给我null异常。这是一个不错的项目,但我认为它需要更新。将
组件放置在JSX中会显示一条警告:react dom.development.js:12466警告:组件willmount已重命名,不建议使用。
render() {
<div>
<Helmet>
<script type="text/javascript" language="javascript" src="//verify.authorize.net/anetseal/seal.js" />
<Helmet>
<a href="http://www.authorize.net/" id="AuthorizeNetText" target="_blank">Working. Yipee</a>
</div>
}