【发布时间】:2020-05-05 09:07:23
【问题描述】:
我正在使用 React 创建应用程序,并且我了解如何将组件导入到我的主应用程序中,该应用程序称为 app.js。 我不明白的是如何在组件中导入组件,然后将其导入 app.js(嵌套组件)。 在我的 app.js 文件中,我有一个名为 Portfolio 的组件。在我的portfolio.js 文件中,我有一个名为Language 的组件。甚至可以使用 React 创建应用程序嵌套组件吗?因为它似乎不起作用。
这是我尝试做的:
在我的 app.js 文件中:
import React from "react";
import logo from "./logo.svg";
import "./App.css";
import Portfolio from './components/portfolio';
import "./css/styles.css"
function App() {
return (
<div className="App">
<header>
<h1>My beautiful title</h1>
</header>
<Portfolio />
</div>
);
}
export default App;
在我的portfolio.js 文件中:
import React, {Component} from 'react';
import Language from './components/language';
class Portfolio extends Component {
render() {
return (
<div className="portfolio">
<Language/>
<h1>My protfolio</h1>
</div>
);
}
}
export default Portfolio;
在 language.js 中我有:
import React, {Component} from 'react';
class Language extends Component {
render() {
return(
<div>Switch language</div>
);
}
}
export default Language;
在我的浏览器中,我不断收到以下错误:
"./src/components/portfolio.js 未找到模块:无法解析 './components/language' 在 'C:\Users\mluce\exercice-react\src\components'"
我的 language.js 文件肯定位于我的组件文件夹中。我不明白为什么会出现此错误?
【问题讨论】:
-
如果语言和组件在同一目录下,试试
import Language from './language'; -
你的文件夹结构是什么样的?你能显示截图吗?如果您的 Language.js 与 Portfolio 处于同一级别,则无需执行
./component