我正在使用javascript
和react
,由于某种原因,我遇到了奇怪的令牌错误。
这是发生错误的代码:
renderNavBar() {
if (!this.userHash) {
return server_1.default.renderToString(React.createElement(navComponent.navBarNoUser, null));
}
}
打字稿:
renderNavBar() {
if (!this.userHash) {
return ReactDOMServer.renderToString(<navComponent.navBarNoUser />);
}
}
如果我注释掉
return ReactDOMServer
行,则没有错误。为什么会发生此错误?我还通过
jslint
传递了该函数,但没有遇到此问题。谢谢!
最佳答案
因为React Component的名称必须为大写。
尝试
renderNavBar() {
if (!this.userHash) {
return ReactDOMServer.renderToString(<NavComponent.NavBarNoUser />);
}
}
将navComponent的名称更改为NavComponent,navBarNoUser => NavBarNoUser