首页 > 其他分享 >Vue学习(二)

Vue学习(二)

时间:2022-10-05 16:13:00浏览次数:50  
标签:Vue 自定义 学习 vue props 组件 属性

vue检测数据的原理

数组的常用方法:
push,pop,shift,unshift,splice,sort,reverse.

原理就是setter,vue生成每个属性的setter,
递归生成所有的getter,setter.
vue.set()的使用
动态生成属性,或者vm.$set(obj,'key','value'),两个api同样的效果

特别注意:Vue.set() 和 vm.$set() 不能给vm或vm的根数据对象(data等)添加属性

image

也可以使用vue.$set(obj,index,'value')
image

收集表单数据

image
过滤器
局部过滤器和全局过滤器
全局过滤器
Vue.filter('myfilter',function(value){
return value.slice(0,4)
})
时间的格式化显示
过滤器常用在插值语法中.
image

内置指令

v-text

  1. 向所在的节点渲染文本内容
  2. 与插值语法不同,v-text直接替换节点中的内容,{{}}不会.
    v-html
    开启cookie的http-only属性,防止盗用cookie
    支持解析html元素
    image
    v-cloak
    配合css样式display:none
    v-once
    image
    v-pre
    image

自定义vue指令

如实现v-big指令.
directives:{
big(element,binding){
//element是dom元素,binding是对应的绑定的变量的值
element.innerText=xx,
element.value
}
}
完整的写法,包含三个钩子函数.
big: {
bind(){
},
inserted(){

},
update(){

}

}
指令相关的回调,this都是window指令相关的回调,this都是window
全局自定义指令
Vue.directive('name',{})或者Vue.directive('name',function(){})
image

vue生命周期

image
image

模板字符串``
在destroy和beforeDestroy中调用方法后,相关视图不在更新.

image

image

组件

实现应用中局部功能代码和资源的集合

  1. 非单文件组件
    一个文件中包含n个组件
  2. 单文件组件

    Vue.extend({})
    1.创建组件
    2.注册局部组件
    3.编写组件标签
    image
    注意事项
    image
    components中的name是组件默认名称.
    vuecomponent:
    image

原型属性

显式原型属性 函数.prototype
隐式原型属性 对象.__prototype__
image

单文件组件

image
不同版本的vue

ref属性

this.$refs.title
image

props属性

:age="18",绑定age为number类型.

  1. 简单声明
    image
  2. 对数据类型进行限制
    image
  3. 完整写法
    image
    props中定义的数据优先级高于data中的.先读取props,在读取data中的.
    image

mixin引入

mixin的使用
mixins:[minxin]
局部混合
建立mixin.js,在需要用到的组件用import
全局混合
vue.mixin()

vue插件

Vue.user(abc)
image
局部样式
![image](https://img20image

组件间传值

props适用于:

​ (1).父组件 ==> 子组件 通信

​ (2).子组件 ==> 父组件 通信(要求父先给子一个函数)

使用v-model时要切记:v-model绑定的值不能是props传过来的值,因为props是不可以修改的!
props传过来的若是对象类型的值,修改对象中的属性时Vue不会报错,但不推荐这样做。

reduce条件统计

webstorage

包括localstorage和sessionstorage.
image

组件的自定义事件

  1. @自定义事件名="回调方法"
  2. this.$refs.stu.$on('事件名',回调方法)
    时间只触发一次: this.$refs.stu.$once,或者@自定义事件名.once
    解绑事件
    this.$off('事件名'),
    this.$off(['1','2'])解绑多个事件
    this.$off(),无参数,解绑所有自定义事件
    传递多个参数(x,...y) ,y可以接收多个参数
    组件绑定原生时间@click.native="回调方法"
    谁的事件谁触发.
    image

全局事件总线

image

消息的订阅与发布

一种组件间通信的方式,适用于任意组件间通信.

  1. 订阅消息
  2. 发布消息
    pub-sub js,第三方库
    // 下一次dom解析完成后的回调api
    this.$nextTick(function(){
    this.$refs.input.focus()
    })

动画

vue封装的过度和动画
transition标签,多个使用transition-group标签,且要key值
image
image

标签:Vue,自定义,学习,vue,props,组件,属性
From: https://www.cnblogs.com/qianxilin/p/16683826.html

相关文章

  • 三星招聘|计算机视觉和机器学习、视觉算法工程师(校招/社招/实习)
    3D视觉工坊致力于推荐最棒的工作机会,精准地为其找到最佳求职者,做连接优质企业和优质人才的桥梁。三星电子中国研究院招聘信息公司介绍:三星电子中国研究院是三星电子在华投资......
  • MYSQL学习之数据库设计三范式
    (一)什么是设计库设计范式?  数据库表的设计依据,从而进行数据表的设计。(二)范式内容I.第一范式:要求任何一张表必须有主键,每一个字段原子性不可再分。II.第二范式:建立在第一范......
  • vue3 ref()和reactive()的
    vue3中对响应式数据的声明官方给出了ref()和reactive()这两种方式,今天我们来聊聊两种定义定义数据方式有什么不同如上代码,我们使用变量声明的方式,ref的方式,reactive......
  • GDB及Makefile学习
    GDB(1)下载安装gdb:sudoapt-getinstallgdb(2)启动gdbgdbtest(3)启动后界面如下:参考老师所给ppt内容我们可以输入(gdb)l列出文件的代码清单·(gdb)b1.函数......
  • Empire Breakout学习体会
    申明:本文为靶机EMPIRE:BREAKOUT学习笔记,相关操作仅在测试环境中进行,严禁任何危害网络安全的恶意行为。本文主要记录了一些关键知识点,仅供学习!一、安装说明靶机在https://ww......
  • 机器学习实战-朴素贝叶斯
    1.优缺点优点:在数据较少的情况下仍然有效,可以处理多类别问题。缺点:对于输入数据的准备方式较为敏感。适用数据类型:标称型数据2.朴素贝叶斯的一般过......
  • 深度学习pytorch之线性回归实现
    importtorchfrommatplotlibimportpyplotasplt#损失率:learn_rate=0.1#训练数据x=torch.rand([500,1])y=3*x+0.8#参数w=torch.rand([1,1],req......
  • Vue3.x 组合式api的生命周期钩子
    Vue3组合式api的生命周期beforeCreatecreated,setup语法糖模式(组合式api)是没有这两个生命周期的,用setup去代替onBeforeMount获取不到DOM,onMounted可以获取DOMon......
  • MYSQL学习之视图
    (一)什么是视图??  视图就是站在不同的角度取看待同一份数据。(二)基本操作表复制:mysql>createtabledept2asselect*fromdept;#复制mysql>createtablescholar1assel......
  • 论文翻译 | LS-Net:单目双目视觉的非线性最小二乘学习算法
    1摘要在本文中,我们提出了最小二乘网络,一种神经非线性最小二乘优化算法,即使在逆境中也能有效地优化这些代价函数.与传统方法不同,所提出的求解器不需要hand-crafted的正则......