将脚本标签添加到React / JSX并执行其内容

时间:2020-01-04 16:57:36

标签: reactjs

通过useScript自定义钩子添加脚本后,调用该方法时未定义该方法!

import React from 'react';
import ReactDOM from 'react-dom';
import useScript from './use-script';
import './styles.scss';

function App() {
// Note: If you fork this sandbox change "pm28k14qlj" in url to your sandbox id
const [loaded, error] = useScript(
    'https://pm28k14qlj.codesandbox.io/test-external-script.js'
);

return (
    <div>
        <div>
            Script loaded: <b>{loaded.toString()}</b>
        </div>
        <br />
        {loaded && !error && (
            <div>
                Script function call response: <b>{TEST_SCRIPT.start()}</b>
            </div>
        )}
    </div>
);
}

const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);

对于./use-script.js,请转到useScript

此代码表明未定义“ TEST_SCRIPT”!在codeSandBox中可以正常工作,为什么? 我禁用了Eslint,但仍然无法正常工作。 但是,它可以在浏览器控制台中工作。

0 个答案:

没有答案