window .__ INITIAL_DATA__始终未定义

时间:2019-04-19 12:32:34

标签: reactjs typescript dom global

我从服务器响应中得到了这个html:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">            
    </head>
    <body>
        <div id="root" style="overflow-x: hidden; width: 100%; margin: 0;">
            <h1>HELLO WORLD</h1>
        <script src="/client_bundle.js" type="text/javascript"></script>
        <script type="text/javascript">
            window.__INITIAL_DATA__ = {"msg":"Hello this is a test"};
        </script>
    </body>
</html>

这是我的 client.tsx ,该文件被编译为 client_bundle.js ,该文件已导入上述html中。

const {存储,持久性} = configureStore(preloadedState);

ReactDOM.hydrate(
    <Provider store={store}>
        <BrowserRouter>
            <App />
        </BrowserRouter>
    </Provider>, document.querySelector('#root')
);

// This is undefined!!!!
console.log("window.__INITIAL_DATA__", (window as any).__INITIAL_DATA__)

奇怪的是,如果使用浏览器的开发工具, INITIAL_DATA 确实存在:

enter image description here

0 个答案:

没有答案