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 可变数组 注意: 不需要改变集合的时候创建不可变 ...
随机推荐
- P7324 [WC2021] 表达式求值
P7324 [WC2021] 表达式求值 闲话 WC2021 我只得了 20 分,三道题总共 20 分.我是下场了突然后知后觉这件事的,主要原因是我开了 C++11,然后 T1 T2 都没分了.在洛谷 ...
- POJ3268-最短路径-反向存边
因为是单向边,牛儿来回的路径长度并不相同,所以需要用两次dijkstra,一次正向从x开始dijkstra,再将边全部反向存再来一次. 因为是板子题比较良心n比较小,我们就可以用矩阵来存储啦.如果n比 ...
- python进程间的通讯实现
1:进程间通讯的方法:apply_async()非阻塞式通讯 apply()阻塞式通讯 2:使用Queue实现对Process创建的进程间通讯, Queue本身是一个消息队列程序,Queue常 ...
- idea 提示不能打开cmd.exe,idea 编译项目 CreateProcess error=740, 请求的操作需要提升 --->如何设置cmd以管理员身份运行
问题描述:idea 编译项目 idea 编译项目 CreateProcess error=740, 请求的操作需要提升 CreateProcess error=740, 请求的操作需要提升 全网搜索可 ...
- atom之插件安装及相关
1. simplified-chinese-menu 汉化软件 2. file-icons 加上文件图标 3. language-vue 加上vue语言支持 4. platformio-ide-ter ...
- 论文笔记:(ICCV2019)KPConv: Flexible and Deformable Convolution for Point Clouds
目录 摘要 一.引言 二.相关工作 投影网络 图卷积网络 逐点多层感知器网络 点卷积网络 三.核点卷积 3.1由点定义的核函数 3.2刚性的或可变形的核 3.3核点网络层 3.4核点网络架构 四.实验 ...
- 为什么说使用 Linux 系统学习 OpenGL 更方便
前言 上一篇随笔介绍了我的电脑,同时也介绍了 Ubuntu 20.10 系统的安装和美化.这一篇,我将正式开始 OpenGL 之旅.使用 Ubuntu 来进行开发,不仅仅只是因为我对 Linux 桌面 ...
- HCIA-网络层IP地址
TCP/IP 每一层关联性 网络接口层-->TYPE 上层的网络层 --> Protocol -->不同的传输层协议 DSAP SSAP IP地址 剩下的8个字节 IPV4地址 4个 ...
- C++通讯录管理系统(添加联系人,显示联系人,删除联系人,查找联系人,修改联系人,清空联系人,退出通讯录)
1 /** 2 * ProjectNmae:通讯录管理系统 3 * 功能: 4 * 添加联系人:向通讯录添加新人 5 * 显示联系人:显示通讯录中的所有联系人信息 6 * 删除联系人:按照姓名进行删除 ...
- Nginx配置websocket的安全协议wss
//nginx配置wss访问方式 map $http_upgrade $connection_upgrade { default upgrade; '' close; } upstream webso ...