【发布时间】:2017-10-31 15:56:08
【问题描述】:
我正在尝试使用 React.js 在 Meteor 中创建一个简单的 hello world。当我尝试运行应用程序时,它会因“ReferenceError:文档未定义”而崩溃。这个错误对我来说没有意义,文档如何未定义?
客户端 HTML
<head>
<title>Testing 123</title>
</head>
<body>
<div id="root"></div>
</body>
客户端Javascript
import React from 'react';
import ReactDOM from 'react-dom';
Meteor.startup(() => {
ReactDOM.render(<h1>Hello World</h1>, document.getElementById('root'));
});
完整的错误日志
C:\Users\Klynicol\AppData\Local\.meteor\packages\meteor-tool\1.4.4_3\mt-os.windows.x86_32\dev_bundle\server-lib\node_modules\fibers\future.js:280
throw(ex);
^
ReferenceError: document is not defined
at Client/main.js:18:28
at Function.time (c:\MeteorTut\meteortut\.meteor\local\build\programs\server\profile.js:309:28)
at c:\MeteorTut\meteortut\.meteor\local\build\programs\server\boot.js:312:13
at c:\MeteorTut\meteortut\.meteor\local\build\programs\server\boot.js:353:5
at Function.run (c:\MeteorTut\meteortut\.meteor\local\build\programs\server\profile.js:510:12)
at c:\MeteorTut\meteortut\.meteor\local\build\programs\server\boot.js:351:11
Exited with code: 1
Your application is crashing. Waiting for file change.
任何帮助将不胜感激!
【问题讨论】:
-
您可以尝试将渲染包装在
Meteor.isClient中吗?例如。Meteor.startup(() => { if(Meteor.isClient){ ReactDOM.render(<h1>Hello World</h1>, document.getElementById('root')); } });
标签: javascript html reactjs meteor