首页 > 其他分享 >[vue]精宏技术部试用期学习笔记 II

[vue]精宏技术部试用期学习笔记 II

时间:2023-10-18 17:12:52浏览次数:42  
标签:vue import app ts II router 试用期 路由

精宏技术部试用期学习笔记(vue)

router : vue的模拟路由

前置准备

安装 vue-router

pnpm i vue-router@4
//安装版本4的 vue-router

可以在 package.json 文件中查看依赖

  "dependencies": {
    "vue": "^3.3.4",
    "vue-router": "4" //这里
  },

新建文件夹 /src/pages/ 用于存放 vue内置路由

基本思想

在一个 vue页面 中替换不同的 vue组件

来实现模拟路由

实际操作:

在 index.ts 中创建 router 并导出

在 main.ts 中把 router 挂载在 app.vue 上

在 app.vue 中使用 来呈现各个路由上挂载的 component

代码 Code

在 pages 下创建 index.ts

/* index.ts */
import { createRouter, createWebHistory } from "vue-router";
import HelloWorld from "../components/HelloWorld.vue"


const routes = [
    {
        path: "/",
        name: "Home",
        component: HelloWorld
    }
    /* 这里写入各个route
     path 模拟路由的访问
     component 该路由使用的vue组件 */

]

//将上面的数据载入 并创建router实例
const router = createRouter({
    history: createWebHistory(),
    /* 由于vue-router实际上是对router的模拟
    所以使用history来实现浏览器的进退功能 */
    routes: routes
})

//导出
export default router;

在 main.ts 中挂载 router

此处原本应为 main.js 但改成ts了

/* main.ts */
import { createApp } from 'vue'
import App from './App.vue'
import router from './pages/index.ts'
//引入 router

const app = createApp(App);

app.use(router);
// .use() 对组件进行挂载

app.mount('#app');

在 App.vue 中用元素呈现

<template>
  <router-view />
</template>

完成以上步骤即可完成 router 的切换

另:a标签可以实现跳转

<a href="/RouterName">跳转</a>

标签:vue,import,app,ts,II,router,试用期,路由
From: https://www.cnblogs.com/rosyr050301/p/vue_jinhong2.html

相关文章

  • vue进行跳转之后出现Cannot read properties of undefined (reading 'router') TypeEr
    问题描述使用router进行页面跳转时,就出现了这样的问题:也就是这里出现了问题:问题解决本来是按照网上的教程:const_this=this;但是,但是,我本来就是用的这种方法呀~然后就打算直接在这个界面引用:importrouterfrom'@/router'router.push('/one');里面引用的跳转页面......
  • Vite+Vue3 加载速度优化
    可以考虑从以下几个方面优化。整体思路:1.减小打包体积。2.异步加载。静态资源拆分打包在常规打包方法下,所有的第三方依赖将会都打包在一个vendor.js文件里,首次打开页面时,服务器会先加载这个大文件,导致白屏时间过长。而我们打包时,事先将依赖拆分成很多小文件各自进行打包,便可......
  • vue点击文字打开扩展列
    <template><custom-cardshadow="hover"bordered><divclass="system-search"><divclass="search-box"><el-inputclass="box-input"placeh......
  • Vue 实现 PDF 导出功能
    旨在通过html2canvas和jspdf,先将页面的html转成canvas,再将canvas转成pdf,同时解决了分页截断的问题。安装依赖yarnaddhtml2canvasyarnaddjspdf思路通过网上的一些教程,初步实现了html转pdf的功能,将一整个DOM元素放进去,虽然可以粗糙实现,但是出现了很多地方......
  • [vue]精宏技术部试用期学习笔记 I
    精宏技术部试用期学习笔记(vue)什么是vue?我个人对vue的理解是把html\css\js三件套融合起来的结构,同时用组件化的思维把一个页面装填起来同时让页面形成树状结构优点是方便多人员维护提高代码复用性如何创建一个vue项目?我这里使用的是vite+vue的轻量化项目,使用pnpm......
  • Vue项目打包为桌面应用
    vue项目首先使用 npmrunbuild 打包为dist文件后,进入dist目录得到如下文件:就是打包后的html+css+js+static 新建一个deskapp文件夹,里面在新建一个App文件夹,把打包好的dist里面的所有文件拷贝到App文件夹里面: 然后我们需要用到一个安装包的json文件,在deskapp文件夹中新建......
  • vue项目中添加全页水印
    先看代码1/**水印添加方法*/23letsetWatermark=(str1,str2)=>{4letid='1.23452384164.123412415'56if(document.getElementById(id)!==null){7document.body.removeChild(document.getElementById(id))8}......
  • 999 vue 小结
    一、组件之间的数据传输传递带有返回值的js值(1)props:既可以实现父传子,也可以实现子传父(不常用应该)(2)自定义事件,也叫组件传递事件,$emit()实现子传父传递template中的HTML内容:slot插槽......
  • Vue3 element-plus el-cascader后缀图标更改(svg)
    概述今天用element-plus写通用表单的时候,发现了它的el-cascader组件竟然不支持改后缀图标,主要它的普通下拉el-select组件都能随便改suffix-icon,级联的下拉就不支持了,令人疑惑。    然后,找了好多办法,包括直接取原生的Component改它的arrowDown属性,发现也不支持了。没......
  • 代码随想训练营第四天(Python)| 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点
    两两交换链表中的节点关键点:涉及到头节点变动的都使用虚拟节点。画图找出交换节点指向的顺序和退出循环的条件。1、迭代法classSolution:defswapPairs(self,head:Optional[ListNode])->Optional[ListNode]:dummy_node=ListNode(next=head)cur=......