首页 > 其他分享 >Vue前端面试题

Vue前端面试题

时间:2023-09-26 19:02:09浏览次数:39  
标签:传参 面试题 Vue keyword 前端 params props 参数 路由

1.Vue路由传递params参数使用对象写法的时候能不能和path一起使用?

不能

路由传参对象的写法:指定路由需要使用name指定。使用path会导致路由失效无法跳转。

this.$router.push({name:"search",params:{keyword:this.keyword},query:{k:this.keyword.toUpperCase()}})


2.如何指定params参数可以传或者不传?

如果路由要求传递params参数,但是没有传,路由会出现问题

解决:在路由占位后面加上?  

path: "/search/:keyword?",//params传参


3.解决params参数传递''空串出现的问题

 this.$router.push({name:"search",params:{keyword:this.keyword||undefined},query:{k:this.keyword.toUpperCase()}})


4.路由组件能否利用props传参?

可以利用,方法有三。

1.props:true  只能穿params参数

2.props:{a:1,b:2}传递额外的参数

3.函数法

props:function ($route) {//函数法传params 和query参数
        return {keyword:$route.keyword,k:$route.keyword.toUpperCase()}
    }
}


标签:传参,面试题,Vue,keyword,前端,params,props,参数,路由
From: https://blog.51cto.com/u_14234172/7613113

相关文章

  • 新手指引:前后端分离的springboot + mysql + vue实战案例
    案例说明:使用springboot+mysql+vue实现前后端分离的用户查询功能。1、mysql:创建test数据库->创建user数据表->创建模拟数据;2、springboot:配置mysql->使用mybatis操作mysql数据库->接口开发;3、vue:使用axios访问接口->user数据展示;1、mysql数据库1.1、安......
  • 记录--前端实现并发请求限制
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助前言前两天我的新同事告诉我一个困扰着他的问题,就是低代码平台中存在很多模块,这些模块的渲染是由模块自身处理的,简言之就是组件请求了自己的数据,一个两个模块还好,要是一次请求了几十个模块,就会出现请求阻塞的问题......
  • Vue3 引入 Element Plus
    ElementPlus简介ElementPlus是一个基于Vue3的UI组件库,其设计原则可分为一致(Consistency)、反馈(Feedback)、效率(Efficiency)、可控(Controllability)四个方面。目前ElementPlus可使用的UI组件种类丰富,除了按钮、边框、icon等基本组件,还可以在项目中引入表单组件、数据展示组件、导航......
  • vuex的使用
    Vuex的使用在Vue中实现集中式状态管理的一个Vue插件,对Vue应用中多个组件的功效状态进行集中式的管理(读/写),也是一种组件间通信的方式,且适用于任意组件间通信。使用步骤:1.新建store/index.js state中:存放数据mutations:当使用commit方法是会被触发actions:当使用dispatch方......
  • vue3 + mark.js | 实现文字标注功能
    页面效果具体实现新增1、监听鼠标抬起事件,通过window.getSelection()方法获取鼠标用户选择的文本范围或光标的当前位置。2、通过选中的文字长度是否大于0或window.getSelection().isCollapsed(返回一个布尔值用于描述选区的起始点和终止点是否位于一个位置,即是否框选了)来......
  • vue~封装一个文本框添加与删除的组件
    标签组件的效果如下组件作用这是一个div,包含了两个文本框,后面是添加和删除按钮添加按钮复制出新的div,除了文本框没有内容,其它都上面一样删除按钮将当前行div删除组件实现<template><div><templatev-for="(item,index)intags"><el-row:gutter="4"styl......
  • VUE 3.0使用Tinymce编辑器
    本人使用的IDEA开发工具参考文档:1.官方文档2.中文文档一、使用npm安装Tinymce。我这里是指定了版本号的npm install [email protected]@tinymce/[email protected]二、修改路径,加汉化1、将下载好的tinymce,从node_modules复制到public文件夹里   2、汉化(......
  • vue~封装一个文本框标签组件
    用到的技术父组件向子组件的传值类型检查和默认值:您可以为props指定类型检查和默认值。这可以确保传递给子组件的数据符合期望的类型,以及在没有传递数据时具有合理的默认值。例如:props:{message:{type:String,default:'DefaultMessage'},count:{......
  • 【vue2】实现数字纵向滚动效果(计时器效果)
    需求:在页面中显示一个数字,并在进入视口时显示计时器滚动效果: 效果如上↑ 新建组件ScrollNumber.vue:<template><divstyle="display:inline-flex;justify-content:flex-start;align-items:center;"><divv-for="(item......
  • VUE~~vue-grid-layout
    1.vue2版本yarnaddvue-grid-layoutimport{GridLayout,GridItem}from"vue-grid-layout";2.vue3版本[email protected]'vue-grid-layout';app.use(VueGridLayout);......