bilibili面试题,Vue学习之从入门到神经(万字长文 建议收藏),View的这些基础知识你必须要知道

本文详细介绍了如何在Vue.js中通过多种方式安装,包括基本语法如钩子函数、插值表达式、数据双向绑定(v-model)以及事件处理、循环遍历、条件渲染等核心概念。此外,还提供了学习资源链接,帮助前端开发者提升技能。
摘要由CSDN通过智能技术生成

此处引荐下大佬的文章 讲的非常详细

Vue.js三种方式安装

一、 Vue导入

====================================================================

概述:Vue是一个类似于Jquery的一个JS框架,所以,如果想使用Vue,则在当前页面导入Vue.js文件即可。

语法

案例

用户名:


您输入的用户名是: {{name}}

二、Vue基本语法

=====================================================================

1.钩子函数


**概述:**钩子函数, 其实就是Vue提前定义好的事件, 其作用类似于Servlet的init方法和distory方法

语法

补充:Vue声明周期和钩子函数

在这里插入图片描述

(1)什么是vue生命周期?

Vue 实例从创建到销毁的过程,就是生命周期。也就是从开始创建、初始化数据、编译模板、挂载Dom→渲染、更新→渲染、卸载等一系列过程,我们称这是 Vue 的生命周期。

(2)vue生命周期的作用是什么?

Vue生命周期中有多个事件钩子,让我们在控制整个Vue实例过程时更容易形成好的逻辑。

(3)vue生命周期总共有几个阶段?

可以总共分为8个阶段:创建前/后, 载入前/后,更新前/后,销毁前/后。

(4)第一次页面加载会触发哪几个钩子?

第一次页面加载时会触发 beforeCreate, created, beforeMount, mounted 这几个钩子

(5)DOM 渲染在 哪个周期中就已经完成?

DOM 渲染在 mounted 中就已经完成了。

(6)简单描述每个周期具体适合哪些场景?

生命周期钩子的一些使用方法:

beforecreate : 可以在此阶段加loading事件,在加载实例时触发;

created : 初始化完成时的事件写在这里,如在这结束loading事件,异步请求也适宜在这里调用;

mounted : 挂载元素,获取到DOM节点;

updated : 如果对数据统一处理,在这里写上相应函数;

beforeDestroy : 可以做一个确认停止事件的确认框;

nextTick : 更新数据后立即操作dom;

2. 插值表达式


**概述:**插值表达式用户把vue中所定义的数据,显示在页面上. 插值表达式允许用户输入"JS代码片段"

语法{{ 变量名/对象.属性名 }}

案例

vue插值表达式

欢迎来到-->{{ name }}

3.显示数据(v-text和v-html)


概述:

​ v-text和v-html专门用来展示数据, 其作用和插值表达式类似。v-text和v-html可以避免插值闪烁问题.

​ 当网速比较慢时, 使用{{}}来展示数据, 有可能会产生插值闪烁问题。

​ 插值闪烁: 在数据未加载完成时,页面会显示出原始的{{}}, 过一会才会展示正常数据.

语法

v-text:

v-html:

区别

v-text:把数据当作纯文本显示.

v-html:遇到html标签,会正常解析

4.数据双向绑定数据(v-model)


概述:

​ Vue的双向绑定可以实现: 数据变化的时候, 页面会自动刷新, 页面变化的时候,数据也会自动变化.

注意:

  1. 双向绑定, 只能绑定**“文本框,单选按钮,复选框,文本域,下拉列表”**等

  2. 文本框/单选按钮/textarea, 绑定的数据是字符串类型

  3. 单个复选框, 绑定的是boolean类型

  4. 多个复选框, 绑定的是数组

  5. select单选对应字符串,多选对应也是数组

4.1.绑定文本框

代码:

用户名:

效果:

在这里插入图片描述

4.2.绑定单个复选框

代码:

同意

效果:

在这里插入图片描述

4.3.绑定多个复选框

代码:

Java

Python

Swift

效果:

在这里插入图片描述

4.4.form表单数据提交

例子:传json格式跟formData格式的两种情况

<span class=“but” @click=“onSubmit()”>提交

5.事件处理(v-on)


5.1.事件绑定(v-on)

概述:

​ Vue中也可以给页面元素绑定事件.

语法

<button v-on:事件名=“函数名/vue表达式”>点我

<button @事件名=“函数名/vue表达式”>点我

注意:

​ Vue支持html中所有已知事件. 如: @click, @submit等, 只不过事件的名字不带on

案例

vue事件处理

<button @click=“show”>点我

5.2.事件修饰符

**概述:**事件修饰符主要对事件的发生范围进行限定

语法

<button @事件名.事件修饰符=“函数名/vue表达式”>点我

分类:

.stop :阻止事件冒泡, 也就是当前元素发生事件,但当前元素的父元素不发生该事件

.prevent :阻止默认事件发生

.capture :使用事件捕获模式, 主动获取子元素发生事件, 把获取到的事件当自己的事件执行

.self :只有元素自身触发事件才执行。(冒泡或捕获的都不执行)

.once :只执行一次

案例

vue事件处理

<button @click=“show”>点我

6.循环遍历(v-for)


6.1.遍历数组

语法

v-for=“item in items”

v-for=“(item,index) in items”

items:要迭代的数组

item:存储数组元素的变量名

index:迭代到的当前元素索引,从0开始。

代码

    • {{index}}–{{user.name}}–{{user.age}}–{{user.gender}}

      6.2.遍历对象

      语法

      v-for=“value in object”

      v-for=“(value,key) in object”

      v-for=“(value,key,index) in object”

      value,对象的值

      key, 对象的键

      index, 索引,从0开始

      代码

      • {{index}}–{{key}}–{{value}}

        6.3.key

        概述:

        ​ :key 一般配合v-for一起使用. 用来在特定情况下, 保证被遍历的数组中的元素的顺序.

        案例:

        <button @click=“add”>添加

        • {{name}}

          效果:

          在这里插入图片描述

          解决方案:

          <button @click=“add”>添加

          • {{name}}

            7.判断语法(v-if和v-show)


            概述:

            v-if与v-show可以根据条件的结果,来决定是否显示指定内容.

            ​ v-if: 条件不满足时, 元素不会存在.

            ​ v-show: 条件不满足时, 元素不会显示(但仍然存在).

            案例

            <button @click=“show = !show”>点我

            Hello v-if.

            Hello v-show.

            8.显示数据(v-bind)


            概述:

            v-bind的作用和插值表达式差不多, 只不过, v-bind主要用于动态设置标签的属性值

            自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

            深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

            因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
            img
            img
            img
            img
            img
            img

            既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

            由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

            如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
            img

            最后

            基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack、git、node学习的再好也无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

            一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
            img

            nd)


            概述:

            v-bind的作用和插值表达式差不多, 只不过, v-bind主要用于动态设置标签的属性值

            自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

            深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

            因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
            [外链图片转存中…(img-mIWDzSxj-1712417875759)]
            [外链图片转存中…(img-xZx9RjKX-1712417875759)]
            [外链图片转存中…(img-oGUGoBei-1712417875760)]
            [外链图片转存中…(img-S58v8Lrm-1712417875760)]
            [外链图片转存中…(img-DjWqThZR-1712417875760)]
            [外链图片转存中…(img-0QUS7HRV-1712417875760)]

            既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

            由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

            如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
            [外链图片转存中…(img-VDxkJLXZ-1712417875761)]

            最后

            基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack、git、node学习的再好也无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

            一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
            [外链图片转存中…(img-NZIA2C4q-1712417875761)]

          评论
          添加红包

          请填写红包祝福语或标题

          红包个数最小为10个

          红包金额最低5元

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

          抵扣说明:

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

          余额充值