【问题标题】:React Js inject (React is not defined)React Js 注入(React 未定义)
【发布时间】:2015-10-31 08:33:51
【问题描述】:

为什么:在 chrome 扩展中使用 react

代码:

var files = [

    {element: 'script', parameters: {src: chrome.extension.getURL("ui/react.min.js")}},
    {element: 'script', parameters: {src: chrome.extension.getURL("ui/react-dom.min.js")}},
    {element: 'script', parameters: {src: chrome.extension.getURL("ui/popup.js")}},

    ]

    for(var i=0; i < files.length; i++){
        file = files[i]

        var e = document.createElement(file.element);

        for(var j in file.parameters){
            param = file.parameters[j];
            console.log(param)
            e[j] = param;
        }
        document.head.appendChild(e);
    }

结果:文件注入成功,但在 popup.js 中尝试使用时出现错误(Uncaught ReferenceError: React is not defined)

【问题讨论】:

    标签: javascript google-chrome-extension reactjs


    【解决方案1】:

    脚本不会同步注入。考虑使用 webpack 之类的东西,通过开箱即用的依赖管理将它们捆绑成一个部分(毕竟我们生活在 2015 年:))

    document.createElement("script") synchronously

    作为参考

    【讨论】:

      猜你喜欢
      • 2017-12-04
      • 1970-01-01
      • 1970-01-01
      • 2020-11-25
      • 1970-01-01
      • 2022-01-17
      • 2021-07-03
      • 2018-11-13
      • 2018-09-28
      相关资源
      最近更新 更多