反应Js注入(React未定义)

时间:2015-10-31 08:33:52

标签: javascript google-chrome-extension reactjs

原因:使用Chrome扩展中的反应

代码:

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未定义)

1 个答案:

答案 0 :(得分:0)

脚本不是同步注入的。考虑使用像webpack这样的东西,将它们捆绑成一个开箱即用的依赖管理(我们生活在2015年,毕竟:))

document.createElement("script") synchronously

作为参考