vue3.0入门(二)
前言
指令
#id2{ // css部分
font-size: 24px;
color: green;
}
v-bind:href="myUrl" v-bind:id="myId" // 等同于:href="www.baidu.com" id="id2"
v-on:blur="myBlur"
Vue.createApp({
data(){
return {
myUrl: 'www.baidu.com'
,myId: 'id2'
}
},
methods: {
myBlur(){
//
}
}
}).mount("dom节点")
动态绑定参数
v-bind:[attrHref]='myUrl' // 视图部分,动态绑定的是标签的属性
data(){ // 脚本部分
return {
myUrl: 'www.baidu.com'
// ,attrHref: 'href' // 不会解析成驼峰的方式,所以这么写不起作用
,attrhref: 'href'
}
}
指令修饰符
- 更多修饰符查看文档:https://v3.cn.vuejs.org/api/directives.html#v-on
- 案例:.prevent
v-on:submit.prevent="mySubmit" // v-on的内置修饰符.prenent表示阻止表单提交
Vue.createApp({
data(){
return{}
},
methods:{
mySubmit(){
//
}
}
}).mount("dom节点")
指令缩写
- v-bind:href="myUrl" 可缩写成 :href="myUrl"
- v-on:click="mySubmit" 可缩写成 @click="mySubmit"
常用指令
data函数
- 该函数返回一个对象,并以 $data 的形式存储在组件实例中
- 操作data函数中的数据
const vm = Vue.createApp({
data(){
return{
count: 0
}
}
}).mount('#app');
// vm.count
// vm.$data
// vm.$data.count
防抖和节流
- 当用户点击提交时,每隔1秒才能提交一次,避免用户狂点,以此降低服务器压力
@click="submit"
methods: {
// 用 Lodash 的防抖函数
submit: _.debounce(function() {
// ... 响应点击 ...
console.log("提交成功!")
}, 1000)
}
计算属性
{{length > 0 ? 'Yes' : 'No'}} // 不建议在大括号中写js表达式
{{demo1}} // 使用计算属性的getter
{{demo2()}} // 在methods中解析的方式
// 计算属性和methods有同样的效果,区别:计算属性带有缓存效果,只有data发生改变时,才会调用;methods是每次调用
{{demo3}} // 使用计算属性的setter设置值
const vm = Vue.createApp({
data(){
return{}
},
computed: { // 计算属性
demo1(){
// 在此处解析js表达式
},
demo3: {
get(){ // 方法名必须是get和set,否则不起作用
// 用于获取值
},
set(newValue){ // 使用set方法必须传递参数value
// 用于设置值
}
}
},
methods: {
demo2(){
// 也可在这里解析js表达式
}
}
}).mount('#app');
侦听器
v-model='name'
Vue.createApp({
data() {
return {
name: ''
}
},
watch: { // 侦听器的关键字是watch,侦听器的目的是为了响应数据的变化
name(oldval,newval){ // 侦听器中的方法名必须和data中的属性一致
// 对改变前后数据进行操作
this.demo(newval) // 同时每次改变时,可调用方法发送请求等操作
}
},
methods: {
demo(name){
// 发送请求的方法,这里结合侦听器使用
}
}
}).mount("#app");
vue3.0入门(二)的更多相关文章
- vue3.0入门(三)
前言 最近在b站上学习了飞哥的vue教程 学习案例已上传,下载地址 class绑定 对象绑定 :class='{active:isActive}' // 相当于class="active&q ...
- vue3.0入门(一)
前言 最近在b站上学习了飞哥的vue教程 学习案例已上传,下载地址 使用方式 使用在线cdn 下载js文件并自托管,引入到项目后使用 使用npm安装后,用cli来构建项目 声明式渲染 Vue2需引入v ...
- vue3.0入门(五):vite构建vue项目
使用vite构建项目步骤 安装node,cmd输入:node -v验证是否安装成功:一般node安装后会自动安装npm,cmd输入:npm -v验证是否安装成功 选择一个文件夹作为项目文件夹,搜索框输 ...
- vue3.0入门(四):组件
组件 组件基础 <my-counter></my-counter> const app = Vue.createApp({ // 根组件 data() { return {} ...
- 企业应用架构研究系列二十七:Vue3.0 之环境的搭建与Vue Antd Admin探索
开发前端需要准备一些开发工具,这些工具怎么安装就不详细描写了,度娘一些很多很多.主要把核心的开发工具列表一些,这些资源也是非常容易找到和安装的. Node 安装:https://nodejs.org/ ...
- 【原创】NIO框架入门(二):服务端基于MINA2的UDP双向通信Demo演示
前言 NIO框架的流行,使得开发大并发.高性能的互联网服务端成为可能.这其中最流行的无非就是MINA和Netty了,MINA目前的主要版本是MINA2.而Netty的主要版本是Netty3和Netty ...
- Omnet++ 4.0 入门实例教程
http://blog.sina.com.cn/s/blog_8a2bb17d01018npf.html 在网上找到的一个讲解omnet++的实例, 是4.0下面实现的. 我在4.2上试了试,可以用. ...
- spring web flow 2.0入门(转)
Spring Web Flow 2.0 入门 一.Spring Web Flow 入门demo(一)简单页面跳转 附源码(转) 二.Spring Web Flow 入门demo(二)与业务结合 附源码 ...
- Swift语法基础入门二(数组, 字典, 字符串)
Swift语法基础入门二(数组, 字典, 字符串) 数组(有序数据的集) *格式 : [] / Int / Array() let 不可变数组 var 可变数组 注意: 不需要改变集合的时候创建不可变 ...
随机推荐
- windows安装Laravel框架经验心得(一)
作为一个程序员,要活到老学到老.虽然自己水平很菜,但是也要继续往前走,所以打算利用一些空闲时间在学习一些新知识,比如Laravel框架. 看书费劲,好不容易找到了一些关于Laravel的教学视频.不过 ...
- P6106 [Ynoi2010] Self Adjusting Top Tree
P6106 [Ynoi2010] Self Adjusting Top Tree 题意 给出平面直角坐标系上若干不与坐标轴平行的处于第一象限的互不相交的线段,多次询问平面中一个第一象限的矩形与这些线段 ...
- idea使用maven下载jar包,出现证书校验问题问题,unable to find valid certification path to requested target
每次从github上下载下来的项目都报如下错误could not transfer artifact org.springframework.boot:spring-boot-starter-pare ...
- selenium 鼠标,键盘操作
1.鼠标操作 导包:from selenium.webdriver.common.action_chains import ActionChains 1.context_click() ...
- Python - 可变和不可变对象
前置知识 在 Python 中,一切皆为对象 Python 中不存在值传递,一切传递的都是对象的引用,也可以认为是传址 有哪些可变对象,哪些不可变对象? 不可变对象:字符串.元组.数字(int.flo ...
- Appium使用inspactor开始session报"Could not connect to server; are you sure it's running?"
appium在使用inspactor start session时提示:Could not connect to server; are you sure it's running?如下图 解决方案为 ...
- Spring Boot核心技术之Rest映射以及源码的分析
Spring Boot核心技术之Rest映射以及源码的分析 该博客主要是Rest映射以及源码的分析,主要是思路的学习.SpringBoot版本:2.4.9 环境的搭建 主要分两部分: Index.ht ...
- Python小白的数学建模课-12.非线性规划
非线性规划是指目标函数或约束条件中包含非线性函数的规划问题,实际就是非线性最优化问题. 从线性规划到非线性规划,不仅是数学方法的差异,更是解决问题的思想方法的转变. 非线性规划问题没有统一的通用方法, ...
- 初探Docker CentOS 7.9 2009 Mini 操作系统环境初始化 和Docker初始化
初探docker 什么是docker?docker就是一种虚拟化技术,将一个服务虚拟化成一个拥有操作系统内核作为基石的快速使用服务.不用担心环境不同服务效果 不同. docker 官网可以从中央仓库中 ...
- template.js模板工具案例
案例一 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset=&qu ...