vue前端开发100问(持续更新)

news/2024/11/27 2:10:19/

1.export default的作用是
export主要用于对外输出本模块变量的接口,一个文件就可以被理解为一个模块。export就是导出。

import就是在一个模块中加载另一个含有export接口的模块, import就是导入。

2.什么样的内容需要放在export default里面,什么样子的内容不需要放在里面

Cannot set property ‘tableData’ of undefined

  1. 箭头函数的作用:帮助获取当前vue实例

  2. 如何存储用户信息
    localStorge
    cookie都可以存取

  3. vuex的作用
    数据共享
    注意每次刷新页面共享的数据会被刷掉

  4. 上传文件
    使用element-ui里面的 <el-update>组件
    提供了两种方式
    1)action,接第三方存储空间
    2)自定义上传绑定一个函数处理,使用http-request方法进行绑定,比如绑定handleRequets函数,可以利用handleRequest像后端发送请求,让后端存储

  5. 关于nodejs和npm版本不匹配的解决方法

问题描述,重装了低版本的npm,然后和node版本不匹配了,不管允许任何npm命令都疯狂报错

npm WARN npm npm does not support Node.js v18.15.0
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 6, 8, 9, 10, 11, 12.
npm WARN npm You can find the latest version at https://nodejs.org/
npm ERR! cb.apply is not a functionnpm ERR! A complete log of this run can be found in:
npm ERR!     D:\nodejs\node_cache\_logs\2023-04-07T02_51_34_588Z-debug.log
PS E:\gitProject\demo\vue> npm install npm@9.5.0 -g
npm WARN npm npm does not support Node.js v18.15.0
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm You can find the latest version at https://nodejs.org/
npm ERR! cb.apply is not a function

我的解决办法类似楼主,但我没有找到npm-cache文件夹,我找到了全局的npm文件夹,然后删除了,后来又重新安装了对应版本的npm

  1. 视频播放器版本不匹配
npm -v  9.5.0
node -v 18.15.0
vue -V  @vue/cli 5.0.8

尝试了以下几条命令安装 vue-video-player

npm install vue-video-player --save
npm i vue-video-player
npm install video.js @videojs-player/vue --save

均以失败告终

npm ERR! code ERESOLVE                                  
npm ERR! ERESOLVE unable to resolve dependency tree     
npm ERR! 
npm ERR! While resolving: demo@0.1.0
npm ERR! Found: video.js@8.0.4
npm ERR! node_modules/video.js
npm ERR!   dev video.js@"^8.0.4" from the root project  
npm ERR! 
npm ERR! Could not resolve dependency:
npm ERR! peer video.js@"7.x" from vue-video-player@6.0.0
npm ERR! node_modules/vue-video-player
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR!
npm ERR! For a full report see:
npm ERR! D:\nodejs\node_cache\_logs\2023-04-07T02_37_39_394Z-eresolve-report.txt

解决:解决的也很魔幻,一开始看他的意思好像是我自己的videojs和vue-video-player需要的video.js不匹配,然后我突发奇想,那我干脆用video.js实现算了,
执行了以下命令
npm install --save-dev video.js
后来发现,video.js这家伙操作起来有难度(网上没有教程)
于是我就又硬着头皮看报错
哎嘿!还真让我发现了
npm ERR! Fix the upstream dependency conflict, or retry npm ERR! this command with --force or --legacy-peer-deps
于是我就又执行了
npm install video.js @videojs-player/vue --save --force
居然,成功了!!!,当然,也可能是因为我安装了video.js的原因(因为之前一直注释掉vue-video-player,所以我其实没办法确定到底这个问题是什么时候解决的,哪一步解决的),具体原因就不细究了,等我学成归来再讲。
在这里插入图片描述

  1. ElementUI的el-table怎样隐藏某一列

  2. 怎么实现页面跳转并且赋值给另外一个页面的变量

  3. vue实现页面跳转并传参的八种方法

  4. 将el-table的某一列设置为按钮
    直接在表格里面加一个button组件

  5. 父组件给子组件传值

    props是一个对象,包含父组件传递给子组件的所有数据。
    props+setup但是,我不太会用setup,因为之前一值没用过,感觉还得改原有的data和method,怕改出更多的bug
    props+watch
    watch监听props里面属性的变化(因为prop里面的属性是动态赋值的),然后这个属性是不能直接在methods里面通过this.获取的,所以需要监听它的变化,如果发生变化,再赋值过去。

    父组件 Father.vue

<template><img alt="Vue logo" src="./assets/logo.png"><demo1 :message="message"></demo1><button @click="alter">父组件传值</button>
</template><script>
import demo1 from "@/components/demo1";export default {name: 'App',components: {demo1},data(){return{message:'seeYou',}},methods:{alter(){this.message="happy"}}
}
</script><style>
#app {font-family: Avenir, Helvetica, Arial, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-align: center;color: #2c3e50;margin-top: 60px;
}
</style>
子组件
<template>
<div><div>{{msg}}</div><button @click="msg='hello'">改变msg</button>
</div>
</template><script>
export default {// eslint-disable-next-line vue/multi-word-component-namesname: "demo1",props:{message:String},watch:{message:function (newData){this.msg=newData;this.getMessage(this.message)}},data(){// return objreturn {msg:'',}},methods:{getMessage(){console.log(this.msg)}}
}
</script><style scoped></style>
  1. vue3 setup
    一文看懂vue3中setup()和 <script setup><script>的区别

  2. vue中四个级别的作用域
    全局作用域
    子树作用域
    组件作用域(可以理解为类)
    实例作用域(可以理解为对象)
    其实还应该有一个代码块作用域(let)

  3. 原生js实现文件下载

  4. 前端从后端下载或导出文件的方法

  5. img动态绑定src属性

    注意如果是vue项目文件夹下的资源(例如assets目录)需要require函数
    
//img标签
<img :src=imgSrc>data:{
return{
imgSrc=require(imgUrl)//imgUrl:图片的相对地址
}
}
  1. 如何让div里的span标签内容平均分布在div内?
  2. 报错:
    Runtime directive used on component with non-element root node.
    意思是自定义指令不能放到组件上,而是要放到自有的元素上,也就是这里用到的v-show不能放在自定义组件上,而是放在原来就有的标签上,所以这里套了一层div

http://www.ppmy.cn/news/61893.html

相关文章

操作系统基础知识介绍之并行技术(包括指令级并行和数据级并行以及线程级并行和请求级并行)

一、相关概念 1.1 指令级并行 指令级并行是指在一个处理器内部&#xff0c;利用流水线、超标量、乱序执行等技术&#xff0c;使得多条指令可以同时或部分重叠地执行&#xff0c;从而提高指令的执行速度。比如&#xff0c;一个四级流水线可以同时执行四条指令的不同阶段&#…

const、指针、引用

一、const和指针&#xff1a; 分类&#xff1a; 1.1 指向常量的指针 上面的两种形式所表示的含义为&#xff1a;pt的指向可以随便修改&#xff0c;但pt所 指向的东西不得通过pt修改。 1.2 指向变量的常指针 指针的指向不允许改动&#xff0c;但指向的东西可以修改。&#…

【LeetCode】674. 最长连续递增序列

1. 问题 给定一个未经排序的整数数组&#xff0c;找到最长且连续递增的子序列&#xff0c;并返回该序列的长度。 连续递增的子序列 可以由两个下标 l 和 r&#xff08;l < r&#xff09;确定&#xff0c;如果对于每个 l < i < r&#xff0c;都有 nums[i] < nums[…

【R语言】鉴于计算10亿以内训练模型记录for循环的加速

文章目录 1 前言2 几个循环2.1 100以内的和2.2 100以内奇数和/偶数和 3 多重循环3.1 向量化3.2 合并循环3.3 apply函数3.4 矩阵运算3.5 foreach分解任务 4 讨论 1 前言 笔者主力机是MBAM1芯片&#xff08;8256&#xff09;&#xff0c;某个下午巩固循环突然思考到个问题&#…

前端配置化表单组件设计方法 | 京东云技术团队

一、背景 前端开发中涉及表单的页面非常多&#xff0c;看似功能简单&#xff0c;开发快速&#xff0c;实则占去了很大一部分时间。当某个表单包含元素过多时还会导致html代码过多&#xff0c;vue文件过大。从而不容易查找、修改和维护。为了提高开发效率及降低维护成本&#x…

测牛学堂:2023软件测试入门学习指南(测试理论之缺陷相关内容详解)

缺陷是什么&#xff1f; 缺陷&#xff0c;也就是我们口中的bug。在IEEE的定义是&#xff1a;计算机软件或程序中存在某种破坏正常运行能力的问题&#xff0c;错误&#xff0c;隐藏的功能错误。 开发过程或维护过程中引入的错误&#xff0c;或者 在使用过程中&#xff0c;软件…

第六章 Iptables与Firewalld防火墙

文章目录 第六章 Iptables与Firewalld防火墙一、Iptables1、策略与规则链&#xff08;1&#xff09;、防火墙策略规则的设置&#xff08;2&#xff09;、数据包处理位置 2、基本的命令参数&#xff08;1&#xff09;、iptables中常用的参数以及作用&#xff08;2&#xff09;、…

西安研究所分享

1. 航空工业和中国航发 • 第603研究所&#xff08;第一飞机设计研究院&#xff0c;一飞院&#xff09; 位于西安阎良区&#xff0c;距离主城50公里。待遇杠杠的&#xff0c;门槛很高 • 第618研究所&#xff08;中国飞行自动控制研究所&#xff09; 核心部门是控制、导航和电…