![](/img/trans.png)
[英]Show / load React.js Component dynamically onClick with Navbar?
[英]React.js NavBar: Is it possible to reference a different component's markup? (Trying to create a navbar that references to components in one route)
基本上,我正在嘗試為個人網站應用程序制作導航欄,其中導航欄在單個頁面(路線)上引用內容(關於/技能等)。 制作導航欄時,我可以輕松地使用 ids/classes 引用標記,但我必須將所有 html 放在一個文件中。
我注意到,如果我要將每個內容分成自己的反應文件(About.jsx、Skills.jsx 等)並導入它們,我似乎沒有辦法引用反應組件的標記。
我還注意到使用反應路由器,這是不可行的,因為每個組件都將位於單獨的路由(我不想要)上,而不是在單個路由上。
這是下面我當前的導航欄文件; 我如何准確地導入和引用單獨組件的標記?
import React from 'react';
import "../Styles/NavBar.scss";
import About from "./About.jsx"; (Not used)
import Skills from "./Skills.jsx"; (Not Used)
import Projects from "./Projects.jsx"; (Not used)
const NavBar = () => (
<div class="MainDivWrapper">
<div class="NavBarDiv">
<h1 class="NavBarH1">NavBar</h1>
<br/>
<nav>
<a href="#AboutDiv">About</a>
<a href="#SkillsDiv">Skills</a>
<a href="#ProjectsDiv">Projects</a>
</nav>
{/* <div id="AboutDiv">
<h1>About Me</h1>
<span>Just some text</span>
</div>
<div id="SkillsDiv">
<h1>Skills</h1>
<span>Just some text</span>
</div>
<div id="ProjectssDiv">
<h1>Projects</h1>
<span>Just some text</span>
</div> */}
</div>
<hr class="HeaderDivider"/>
</div>
)
您像這樣引用 JSX 導入:
/* Component have to start with a capital letter. file name can be anything (usually is the same as component) */
import MyComponent from "./MyComponent"
export default function MyApp() {
return (
<div>
/* other html/components here */
<MyComponent /> // selfing close tag
/* or */
<MyComponent> // with `children`
some content
</MyComponent>
</div>
)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.