点击左侧菜单栏如何将内容显示在main主体中,而不是导航到新的页面

1.界面展示

如上图所示,在点击左侧菜单栏是,右侧主体内会相应变化

2.如何实现

(1)首先我们需要设置左侧菜单栏,给它添加一个点击事件(之前用router-link,我发现它会显示的和链接一样,并且会直接跳转到新页,所以这是我上网查到的写法),点击事件后面跟的是你要跳转的文件路由路径,将路由放到你要展示的位置
 <div>
     <el-menu-item index="1" @click="navigateTo('the-main')">
       <el-icon><IconMenu /></el-icon>
       <span>首页</span>
      </el-menu-item>
</div>



<el-main>
     <router-view />
</el-main>
(2)在<script lang="ts" setup>中写入
const navigateTo = (path: string) => {
  router.push({ path })
}
(3)重要的是路由的写法,在你的index.ts文件中
const routes: Array<RouteRecordRaw> = [
  {
    path: '/',
    component: HomeView,
    children: [
      {
        path: '',
        name: 'Main',
        component: TheMain
      },
      {
        path: 'the-main',
        name: 'TheMain',
        component: TheMain
      },
      {
        path: 'the-content',
        name: 'TheContent',
        component: TheContent
      },
      {
        path: 'the-user',
        name: 'TheUser',
        component: TheUser
      }
    ]
  }
]

因为该模块我都写在了HomeView.vue文件里面,所以引用到的路由都属于HomeView的子路由,所以得写到children的里面,这样跳转才能成功

3.小结

我这部分内容用的是vue3和element-plus写的,所以别的版本不知道是否适用,另外这部分内容也是我一直调试出来的,如何有任何不对的地方,欢迎大家批评指正!

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
环境配置 Node 下载地址http://nodejs.cn/ 安装文件下有一个绿色的图片交node.exe 点击运行 输入node -v进行检测是否安装成功 使用vue-cli(脚手架)搭建项目 vue-cli是vue官方提供的用域搭建基于vue+webpack_es6项目的脚手架工具 在线文档:https://github.com/vuejs/vue-cli 操作: 1.npm install -g vue-cli:全局下载工具 2.vue init webpack 项目名:下载基于webpack模板项目 3.cd 项目名:进入项目目录 4.npm install :下载项目依赖的所有模块 5.npm run dev :运行项目 6.访问项目:localhost:8080 项目目录结构 src assets:存放照片、css、js css js img components:存放组件 lib:存放模拟数据 router:配置路由 store:存放vuex vuex的安装:cd x项目目录 cnpm install vuex --save views:存放所有单页面 配置访问端口号: 根目录下有一个config文件夹,看名字就知道与配置有关,打开config目录下的index.js dev: { env: require('./dev.env'), port: 8092, autoOpenBrowser: true, assetsSubDirectory: 'static', assetsPublicPath: '/', proxyTable: {}, } 项目目录下:https://blog.csdn.net/weixin_39378691/article/details/83784403 1.安装elementUI:cd进入项目根目录,npm i element-ui -S 2.引入elementUI组件(main.js文件) import Element from 'element-ui' import 'element-ui/lib/theme-chalk/index.css' Vue.use(Element, { size: 'small' }) 项目目录下:https://blog.csdn.net/weixin_41432849/article/details/81988058 1.安装jquery:cd进入项目根目录, npm install jquery --save 2.在项目 build 里的webpack.base.conf.js 里加载webpack文件,注意,要放在配置文件第一行; const webpack = require('webpack') 3.在module.exports的最后加入 , plugins:[ new webpack.ProvidePlugin({ $:"jquery", jQuery:"jquery", jquery:"jquery", "window.jQuery":"jquery" }) ]
假设你在使用 React 框架和 React Router 库,你可以按照以下步骤来实现导航菜单的路由配置: 1. 安装 React Router 库: ``` npm install react-router-dom ``` 2. 在你的应用程序引入 React Router: ```javascript import { BrowserRouter as Router, Route, Switch } from "react-router-dom"; ``` 3. 创建一个包含导航菜单主体区域的组件,例如 `Layout` 组件。 ```javascript import React from "react"; import { Link } from "react-router-dom"; const Layout = ({ children }) => { return ( <div> <nav> <ul> <li> <Link to="/">Home</Link> </li> <li> <Link to="/about">About</Link> </li> <li> <Link to="/contact">Contact</Link> </li> </ul> </nav> <main>{children}</main> </div> ); }; export default Layout; ``` 4. 创建每个菜单项对应的组件,例如 `Home`、`About` 和 `Contact` 组件,以及一个默认的组件,例如 `NotFound` 组件。 ```javascript import React from "react"; const Home = () => { return <h1>Home</h1>; }; export default Home; ``` ```javascript import React from "react"; const About = () => { return <h1>About</h1>; }; export default About; ``` ```javascript import React from "react"; const Contact = () => { return <h1>Contact</h1>; }; export default Contact; ``` ```javascript import React from "react"; const NotFound = () => { return <h1>Not Found</h1>; }; export default NotFound; ``` 5. 在 `App` 组件使用 `Router`,并根据路由路径渲染对应的组件。 ```javascript import React from "react"; import { BrowserRouter as Router, Route, Switch } from "react-router-dom"; import Layout from "./Layout"; import Home from "./Home"; import About from "./About"; import Contact from "./Contact"; import NotFound from "./NotFound"; const App = () => { return ( <Router> <Layout> <Switch> <Route exact path="/" component={Home} /> <Route exact path="/about" component={About} /> <Route exact path="/contact" component={Contact} /> <Route component={NotFound} /> </Switch> </Layout> </Router> ); }; export default App; ``` 在这个例子,当用户点击导航菜单菜单项时,URL 路径会改变,并且对应的组件会在主体区域显示。如果用户访问了不存在的路由路径,会显示默认组件 `NotFound`。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值