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

news2024/11/25 22:36:54

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 function

npm 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-names
  name: "demo1",
  props:{
    message:String
  }
  ,
  watch:{
    message:function (newData){
      this.msg=newData;
      this.getMessage(this.message)

    }
  },
  data(){
    // return obj
    return {
      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.coloradmin.cn/o/478036.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mybatis使用(简单易上手)

mybatis使用 一、mybatis介绍1、mybatis是什么2、mybatis支持的数据库3、~~mybatis插件机制~~ 二、springboot集成mybatis1、引入依赖2、配置mybatis 三、使用mybatis1、注解方式使用mybatis2、XML文件方式 一、mybatis介绍 1、mybatis是什么 MyBatis是一个开源的Java持久层框…

第十七章 预制件prefab(下)

本章节我们来讲解如何编辑预制体文件。这里介绍三种打开编辑预制件的方式。第一就是通过预制件的实例游戏对象的Inspector检视面板上面的预制件“打开”按钮。 第二就是在Project工程面板中选中预制件文件&#xff08;Cube.prefab&#xff09;&#xff0c;然后在Inspector检视面…

山东专升本计算机第八章-多媒体技术基础

多媒体技术基础 多媒体技术 考点 7 图形/图像处理软件 图形/图像文件格式 • BMP • windows系统下的标准位图格式 • 未经压缩 • JPEG&#xff08;联合图像专家组&#xff09; • 有损压缩格式&#xff0c;色数量高达24位&#xff0c;广泛应用于Internet上的主页或图片…

excel实战小测第四

【项目背景】 本项目为某招聘网站部分招聘信息&#xff0c;要求对“数据分析师”岗位进行招聘需求分析&#xff0c;通过对城市、行业、学历要求、薪资待遇等不同方向进行相关性分析&#xff0c;加深对数据分析行业的了解。 结合企业真实招聘信息&#xff0c;可以帮助有意转向数…

【艾特淘】淘宝“客服3分钟响应率”考核调整

淘宝商家“客服3分钟响应率”考核调整&#xff0c;还不知道的商家赶紧来看看&#xff0c;具体都有哪些变化哦~ 一、考核范围 考核范围对象为店铺正常状态&#xff0c;达到一定经营模式的淘宝卖家。 此对象定义为&#xff1a;卖家的商家层级达到5以上&#xff0c;同时还将考虑…

C++实现二叉搜索树

文章目录 前言1.二叉树搜索树的相关介绍2.二叉搜索树的实现1.二叉搜索树插入数据的实现2.二叉搜索树的查找实现3.二叉搜索树的删除实现4.构造函数和析构函数以及赋值重载的实现 3.二叉搜索树的应用1.将之前的K模型二叉搜索树改造成KV模型2.代码演示 4.二叉搜索树的性能分析 前言…

本地Linux服务器安装宝塔面板,并公网远程登录【内网穿透】

文章目录 前言1. 安装宝塔2. 安装cpolar内网穿透3. 远程访问宝塔4. 固定http地址5. 配置二级子域名6. 测试访问二级子域名 前言 宝塔面板作为建站运维工具&#xff0c;它支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能&#xff0c;可提高运维效率。…

人工智能导论:模型与算法,附录实验三:线性回归模型

本人研一&#xff0c;简单记录下上课的大作业&#xff0c;如果你不会自己写&#xff0c;相信你有缘能找到这篇博客 线性回归模型 1.实验内容 图像是一种非常常见的信息载体&#xff0c;但是在图像的获取、传输、存储过程中可能由于各种原因使得图像受到噪声的影响。如何去除…

程序员如何通过创作图文项目实现自己的代码价值

本文阅读适合人群&#xff1a; 1.程序员 2.图文赛道创业者 项目背景&#xff1a; 毫无疑问&#xff0c;这是一个优质内容的时代&#xff0c;从某种意义上说&#xff0c;优质内容Money。优质内容的形式包含很多&#xff0c;在头条的定义中包括&#xff1a;纯文字&#xff08;…

存储资源调优技术——SmartTier智能分级技术、SmartQoS智能服务质量控制技术

目录 SmartTier智能分级技术 基本概述 工作原理 实现SmartThier数据迁移的三个阶段 应用场景 SmartQoS智能服务质量控制 基本概念 两种关键技术 应用场景 SmartTier智能分级技术 基本概述 自动将不同活跃的数据和不同特点的存储介质动态匹配&#xff0c;提高性能。 NL…

ETL工具 - Kettle 转换算子介绍

一、Kettle 转换算子 上篇文章对 Kettle 中的输入输出算子进行了介绍&#xff0c;本篇文章继续对转换算子进行讲解。 下面是上篇文章的地址&#xff1a; ETL工具 - Kettle 输入输出算子介绍 转换是ETL里面的T&#xff08;Transform&#xff09;&#xff0c;主要做数据转换&am…

开放式基金净值估算数据 API 数据接口

开放式基金净值估算数据 API 数据接口 全量基金数据&#xff0c;实时数据&#xff0c;所有基金数据。 1. 产品功能 返回实时开放式基金净值估值可定义所有基金估值数据&#xff1b;多个基金属性值返回&#xff1b;多维指标&#xff0c;一次查询毫秒级返回&#xff1b;数据持续…

领域驱动设计事件驱动框架命令查询责任分离测试驱动开发

领域驱动设计: DDD 事件驱动框架: Event Driven Architecture 命令查询责任分离: CQRS(Command Query Responsibility Segregation) 测试驱动开发: TDD 先睹为快&#xff1a;架构图 入口&#xff1a;entrypoint 入口是系统外部客户访问系统内部的端口。常见的入口如http, …

算法刷题|647.回文子串、516.最长回文子序列

回文子串 题目&#xff1a;给你一个字符串 s &#xff0c;请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串&#xff0c;即使是由相同的字符…

【redis】redis分布式锁(三)自动续期

系列文章目录 【redis】redis分布式锁&#xff08;一&#xff09;手写分布式锁1.0~6.0 【redis】redis分布式锁&#xff08;二&#xff09;可重入锁设计模式 文章目录 系列文章目录前言一、CAPredis集群 APZooKeeper集群 CP 数据一致性Eureak集群 APnacos集群 AP 二、lua脚本脚…

1 认识仿真工具Packet Tracer【实验】【计算机网络】

1 认识仿真工具Packet Tracer【实验】【计算机网络】 前言推荐1 认识仿真工具Packet Tracer1.1账号注册与Packet Tracer软件下载1.1.1 下载1.1.2 安装 1.2 Packet Tracer界面简介1.2.1 总述1.2.2 详细 1.3网络拓扑构建与设备模块添加1.3.1如何往工作区中添加设备1.3.2添加连线1…

【计算机网络】1.1——因特网概述

因特网概述&#xff08;了解&#xff09; 网络、互联网和因特网 网络由若干结点和连接这些结点的链路组成 多个网络还可以通过路由器互连起来&#xff0c;互联网是"网络的网络“ internet 和 Internet internet&#xff08;互联网或互连网&#xff09;是通用名词 泛指…

Java 基础入门篇(四)——— 方法的重载与参数传递机制

文章目录 一、方法的定义二、方法的参数传递机制 ★2.1 基本类型的参数传递2.2 引用类型的参数传递 三、方法重载 一、方法的定义 方法的作用&#xff1a;封装一段代码的语法结构&#xff0c;可以被重复调用&#xff0c;以此提高代码的复用性&#xff0c;提高开发效率&#xf…

操作系统之线程

线程 一、产生原因 最开始的并发&#xff0c;只能更具切换进程的方式去交替执行进程来宏观上并发&#xff0c;但是切换进程需要切换执行进程的环境&#xff0c;有很大的系统开销&#xff0c;所以产生了线程&#xff0c;让其可以不用频繁的切换进程&#xff0c;使得线程成为CPU…

【论文笔记 fintune 】羊驼

1.论文 这些开发由两个关键组件提供动力&#xff1a;大型预训练语言模型&#xff08;LM&#xff09;和人工编写的指令数据。 1.1 背景 目前的训练太吃数据了&#xff0c;需要使用一些替代方法减少对数据的依赖有微调过的数据集效果远好于没有微调 用什么数据集微调呢&#x…