我有以下HTML代码,我想将它们集成到React中,但不确定如何执行。
我认为这是一个基本错误。我什至可能会做错所有事情
我想在我的React APP中使用以下HTML的功能。它的响应式菜单带有汉堡栏,可扩展到移动菜单
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
<meta http-equiv="x-ua-compatible" content="ie=edge" />
<!--Import Google Icon Font-->
<link
href="https://fonts.googleapis.com/icon?family=Material+Icons"
rel="stylesheet"
/>
<!-- Compiled and minified CSS -->
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css"
/>
<title>GRID</title>
</head>
<body>
<nav class="nav-wrapper indigo">
<div class="container">
<a href="#" class="brand-logo">Site Title</a>
<a href="#" class="sidenav-trigger" data-target="mobile-links">
<i class="material-icons" onClick="displayMobileMenu">menu</i>
</a>
<ul class="right hide-on-med-and-down">
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Login</a></li>
</ul>
</div>
</nav>
<ul class="sidenav" id="mobile-links">
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Login</a></li>
</ul>
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<!-- Compiled and minified JavaScript -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
<script
$(document).ready(function(){
$('.sidenav').sidenav();
});></script>
</body>
</html>
以下是我尝试过的内容 我已经安装了依赖项
- jquery {npm i jquery}(我认为这可行,但不能用于其他用途,所以不确定)
- 对{npm i materialize}进行材料化(这在网站的其余部分都有效)
我的问题是我不确定我应该使用jquery还是使用componentDidmount()编写新的东西
下面是反应代码 codesanbox.io在这里https://codesandbox.io/embed/wiki-mogpb?fontsize=14
import React from "react";
import { Link } from "react-router-dom";
import $ from "jquery";
const displayMobileMenu = () => {
return (
$('.sidenav').sidenav()
)
};
const Navbar = ({ title }) => {
return (
<div>
<nav classname="nav-wrapper indigo">
<div classname="container">
<a href="#" classname="brand-logo">
React Wiki
</a>
<a href="#" classname="sidenav-trigger" data-target="mobile-links">
<i
classname="material-icons"
onClick={displayMobileMenu()}
>
menu
</i>
</a>
<ul classname="right hide-on-med-and-down">
<li>
<Link to="/">Home</Link>
</li>
<li>
<Link to="/files">React Files</Link>
</li>
<li>
<Link to="/context">Contexts</Link>
</li>
<li>
<Link to="/questions">Questions</Link>
</li>
</ul>
</div>
</nav>
<ul classname="sidenav" id="mobile-links">
<li>
<a href="#">Home</a>
</li>
<li>
<a href="#">About</a>
</li>
<li>
<a href="#">Contact</a>
</li>
<li>
<a href="#">Login</a>
</li>
</ul>
</div>
);
};
Navbar.defaultProps = {
title: " React Wiki"
};
export default Navbar;