ReactJS - 无法导入组件
ReactJS - Can't import component
我是 ReactJS 的新手。我正在开发一个小的单页应用程序,我只是想创建我的组件以在我的主要组件中导入。
TestComponent.jsx
import React from 'react'
export class TestComponent extends React.Component {
render() {
return (
<div className="content">Test Component</div>
)
}
}
在我的 main.jsx 中,我导入了这个组件调用
import TestComponent from './components/TestComponent.jsx'
然后我尝试为特定路由调用我的组件:
render(
(<Router history={history}>
<Route path="/" component={NavMenu}>
<IndexRoute component={Index}/>
<Route path="test" component={TestComponent}></Route>
</Route>
</Router>),
document.getElementById('main')
)
我没有从控制台收到任何错误,但我没有看到我的组件。我做错了什么?
不带花括号的导入语法用于导入默认导出,而不用于导入命名导出。
将您的组件设为默认导出:
TestComponent.jsx
import React from 'react'
export default class TestComponent extends React.Component {
render() {
return (
<div className="content">Test Component</div>
)
}
}
或者,您应该能够使用以下导入语句按原样导入它:
import { TestComponent } from './components/TestComponent.jsx'
如果您想在 React 代码中使用 ES6,您可能需要阅读 ES6 模块(例如 Exploring ES6)。
确保在导入语句后也包含分号。在某些情况下,您可能会通过浏览器(或像 Node 这样的环境)读取代码,但导入函数直接运行到这段代码中的导出中。
我是 ReactJS 的新手。我正在开发一个小的单页应用程序,我只是想创建我的组件以在我的主要组件中导入。
TestComponent.jsx
import React from 'react'
export class TestComponent extends React.Component {
render() {
return (
<div className="content">Test Component</div>
)
}
}
在我的 main.jsx 中,我导入了这个组件调用
import TestComponent from './components/TestComponent.jsx'
然后我尝试为特定路由调用我的组件:
render(
(<Router history={history}>
<Route path="/" component={NavMenu}>
<IndexRoute component={Index}/>
<Route path="test" component={TestComponent}></Route>
</Route>
</Router>),
document.getElementById('main')
)
我没有从控制台收到任何错误,但我没有看到我的组件。我做错了什么?
不带花括号的导入语法用于导入默认导出,而不用于导入命名导出。
将您的组件设为默认导出:
TestComponent.jsx
import React from 'react'
export default class TestComponent extends React.Component {
render() {
return (
<div className="content">Test Component</div>
)
}
}
或者,您应该能够使用以下导入语句按原样导入它:
import { TestComponent } from './components/TestComponent.jsx'
如果您想在 React 代码中使用 ES6,您可能需要阅读 ES6 模块(例如 Exploring ES6)。
确保在导入语句后也包含分号。在某些情况下,您可能会通过浏览器(或像 Node 这样的环境)读取代码,但导入函数直接运行到这段代码中的导出中。