Vue知识点(学习笔记)

Vue知识点学习

  • 一、Vue快速上手
    • 1. 脚本引用
  • 二、Vue小知识
    • 1. 简写
      • v-bind
      • v-model
      • el和data的两种写法:
        • el
        • data
    • 2. MVVM模型
    • 3. Object.defineproperty方法
    • 4. Vue的数据代理
    • 5. 事件处理
    • 6. 阻止默认事件
    • 7. Vue中事件修饰符:
    • 8. 引入Element-Ui

一、Vue快速上手

==首先需要先下载vue.js:

https://v2.cn.vuejs.org/v2/guide/installation.html==

1. 脚本引用

借助 script 标签直接通过src引用来使用 Vue:

<!DOCTYPE html>
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" href="纸飞机.png" type="image/png" />
    <title>玻璃瓶和纸飞机</title>
    <script type="text/javascript" src="vue.js"></script>
</head>

<body>

    <div id="demo">
        <h1>Hello,{{userName}}!</h1>
    </div>

    <div id="app">
        {{userName}}
    </div>

    <script type="text/javascript">
        Vue.config.productionTip = false

        new Vue({
            el: '#demo',
            data: {
                userName: "张三"
            }
        })
    </script>
</body>

</html>

二、Vue小知识

1. 简写

v-bind

单项数据绑定,v-bind:href=“xxx” 可以简写为 :href=“xxx”

<a :href="baiduUrl">点我调转百度</a>

v-model

双向数据绑定,只可以作用于表单元素,v-model:value可以简略书写为v-model=“xxx”

双向数据绑定:<input type="text"  v-model:value="xxx">
双向数据绑定:<input type="text"  v-model="xxx">

el和data的两种写法:

el

el用于指定哪一个容器需要被vue关联,第一种形式:

new Vue({
	el:"#app",
	data:{}
})

第二种形式(更灵活):

const v = new Vue({
	// el:"#app",不使用这种形式
	data:{}
})
v.$mount('#app') // 挂载容器 
data

data用于定义数据,第一种写法(对象式):

new Vue({
	el:"#app",
	data:{
		name:"张三"
	}
})

第二种写法(函数式,组件必须采用第二种,切记不能写成箭头函数):

new Vue({
	el:"#app",
	// data:{} 不使用这种形式
	data:function(){
		name:"张三"
	}
})

-------or--------

new Vue({
	el:"#app",
	// data:{} 不使用这种形式
	data(){
		name:"张三"
	}
})

2. MVVM模型

M:模型(Model),对应data中的数据
V:视图(View),页面视图DOM
VM:视图模型(ViewModel),Vue实例对象
在这里插入图片描述

3. Object.defineproperty方法

定义属性的方法
被定义的属性默认不可以被枚举(除非添加: enumerable:true )
默认属性值不可以被修改(除非添加: writable:true )
默认属性不可以被删除(除非添加: configurable:true )

<script type = "text/javascript" >
let person = {
	name:'张三',
	sex:'男',
}

Object.defineproperty(person,'age',{
	value:18.
	enumerable:true, // 允许属性可以枚举
	writable:true, // 允许属性可以被修改
	configurable:true // 允许属性被删除
})

console.log(person)
</script >

高级配置:

<script type = "text/javascript" >
let number = 18
let person = {
	name:'张三',
	sex:'男',
}

Object.defineproperty(person,'age',{
	//value:18.
	//enumerable:true, // 允许属性可以枚举
	//writable:true, // 允许属性可以被修改
	//configurable:true // 允许属性被删除

	// 当有地方读取person的age属性时,get函数就会被调用,切返回值就是age的值
    get(){
    	console.log('读取age属性')
    	return number
    }

	// 当有地方修改person的age数值时,set函数就会被调用,切会收到修改的age具体值
	set(value){
    	console.log('age属性被修改为:', value)
    	number = value
    }

})

4. Vue的数据代理

数据代理知识:通过一个对象代理对另一个队形中属性的操作(读/写)

<script type = "text/javascript" >
	let obj = { x:100 }
	let obj2 = { y:200 }

	Object.defineproperty(obj2,'x',{
		get(){
			return obj.x
		},
		set(value){
			obj.x = value
		}
	})
<script/>

vue将data中的data映射到_data,并且将_data中的属性一一在vm中创建相应属性,并进行赋值(get),set同理

<body>
	<div id = "app">
		<h2>学校名称:{{name}} </h2>
		<h4>地址:{{address}} </h4>
	</div>
</body>

	
<script type = "text/javascript" >
	Vue.config.productionTip = false // 阻止vue在启动时产生生产提示
	const vm = new vue({
		el:'#app',
		data:{
			name:'清华大学',
			address:'北京'
		}
	})
</script>

在这里插入图片描述

5. 事件处理

首先在页面上通过:v-on:click 为按钮绑定一个事件

<button v-on:click="showInfo($event,66)">点击</button>

并在Vue的methods中定义这个方法的执行


    <script>
        new Vue({
            el:'#index_top',
            data: {
                img: '../img/纸飞机.png'
            },
            methods:{
                shouInfo(event,number){
                    alert("您好~",number)
                }
            }
        })
    </script>

v-on:click 可以简写为 @click

6. 阻止默认事件

阻止调用默认事件(@click.prevent):

<a href="https://www.baidu.com" @click.prevent="showInfo">点我提示信息</a>
new Vue({
	el:'#app',
	data:{},
	methods:{
		showInfo(e){
			alert('您好!')
		}
	}
})

7. Vue中事件修饰符:

  1. prevent:阻止默认事件(常用);
  2. stop:阻止事件冒泡(常用);
  3. once:事件只触发一次(常用);
  4. capture:使用事件的捕获模式;
  5. self:只有event.target是当前操作的元素时才触发;
  6. passive:事件的默认行为立即执行,无需等待事件回调执行完毕;

8. 引入Element-Ui

  1. 首先在项目中打开终端控制台,输入以下命令:
    在这里插入图片描述
npm install element-ui@2.15.3
  1. 在main.js中引入:
    在这里插入图片描述
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/519319.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

虚幻UE5数字孪生蓝图开发教程

一、背景 这几年&#xff0c;智慧城市/智慧交通/智慧水利等飞速发展&#xff0c;骑士特意为大家做了一个这块的学习路线。 二、这是学习大纲 1.给虚幻UE5初学者准备的智慧城市/数字孪生蓝图开发教程 https://www.bilibili.com/video/BV1894y1u78G 2.UE5数字孪生蓝图开发教学…

BPMNJS 在原生HTML中的引入与使用

BPMNJS 在HTML中的引入与使用 在网上看到的大多是基于vue使用BPMN的示例或者教程&#xff0c;竟然没有在HTML使用的示例&#xff0c;有也是很简单的介绍核心库的引入和使用&#xff0c;并没有涉及到扩展库。于是简单看了下&#xff0c;真的是一波三折&#xff0c;坎坎坷坷。不…

FreeRtos入门-5 任务通知

在FreeRTOS中&#xff0c;任务通知、队列、信号量和事件组都是用于任务间通信和同步的机制&#xff0c;但它们各自具有不同的特性和适用场景。 任务通知的主要优势在于其高效性和明确性。使用任务通知发送事件或数据给某个任务时&#xff0c;效率更高&#xff0c;且可以明确指定…

Tuxera2023 NTFS for Mac下载,安装和序列号激活

对于必须在Windows电脑和Mac电脑之间来回切换的Mac朋友来说&#xff0c;跨平台不兼容一直是一个巨大的障碍&#xff0c;尤其是当我们需要使用NTFS格式的硬盘在Windows和macOS之间共享文件时。因为Mac默认不支持写入NTFS磁盘。 为了解决这一问题&#xff0c;很多朋友会选择很便捷…

linux操作系统安装及命令初识,上岸蚂蚁金服

310 包&#xff09; desktop 1800个包左右 内容必须大于 768M 系统设置 分区设置 挂载点 /boot / swap 交换分区–占用磁盘容量 网络配置 网卡配置 设置为ON 主机名配置 Begin installation 设置 root 用户密码 命令初识 命令 选项 参数&#xff1a; 命令选项参数…

Restful Web Service

Restful 1.特点 RESTful是一种架构风格&#xff0c;强调简单、轻量级和对资源的状态less操作。RESTful是通过HTTP协议进行通信的。RESTful的应用程序可以调用运行在不同服务器上的服务或函数。RESTful的接口通常使用JSON&#xff0c;但实际上它们都支持多种数据格式。RESTful…

Trace链异常检测汇总

微服务应用与单块应用完全不同&#xff0c;一个微服务系统少则有几十个微服务组成&#xff0c;多则可能有上百个服务。比如BAT级别的互联网公司&#xff0c;一般都超过上百个服务&#xff0c;服务之间的依赖关系错综复杂&#xff0c;如果没有有效的监控手段&#xff0c;那么出现…

风控系统之普通规则条件,使用LiteFlow实现

个人博客&#xff1a;无奈何杨&#xff08;wnhyang&#xff09; 个人语雀&#xff1a;wnhyang 共享语雀&#xff1a;在线知识共享 Github&#xff1a;wnhyang - Overview 提要 参考&#xff1a;智能风控筑基手册&#xff1a;全面了解风控决策引擎 前面有可配置输入参数的接…

Gson的用法

1. 导入依赖 <dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId><version>2.8.6</version> </dependency> 2. 使用Gson进行解析 2.1 Gson解析普通对象 package com.jiang.partnetbackend.…

六、企业级架构缓存篇之memcached

一、memcached概述 1、网站架构优化流程&#xff1a; LNMP架构中网站应用访问流程&#xff1a; 浏览器 (app) → web 服务器 → 后端服务 (php) → 数据库 (mysql) 访问流程越多&#xff0c;访问速度越慢&#xff0c;出现问题的几率也越大。 网站访问流程优化思路&#xff1…

软件测试(测试用例详解)(三)

1. 测试用例的概念 测试用例&#xff08;Test Case&#xff09;是为了实施测试而向被测试的系统提供的一组集合。 测试环境操作步骤测试数据预取结果 测试用例的评价标准&#xff1a; 用例表达清楚&#xff0c;无二义性。。用例可操作性强。用例的输入与输出明确。一条用例只有…

c语言之向main函数传递参数

在c语言中&#xff0c;main函数也是可以传递传递参数的&#xff0c;业内向main函数传递参数的格式是 main(int argc,char *argv[]) 向main函数传递参数不是通过代码传递的&#xff0c;一般是通过dos命令传递 举个例子 #include<stdio.h> void main(int argc,char *ar…

算法刷题应用知识补充--基础算法、数据结构篇

这里写目录标题 位运算&#xff08;均是拷贝运算&#xff0c;不会影响原数据&#xff0c;这点要注意&#xff09;&、|、^位运算特性细节知识补充对于n-1的理解异或来实现数字交换找到只出现一次的数据&#xff0c;其余数据出现偶数次 >> 、<<二进制中相邻的位的…

算法设计与分析实验报告c++实现(排序算法、三壶谜题、交替放置的碟子、带锁的门)

一、实验目的 1&#xff0e;加深学生对分治法算法设计方法的基本思想、基本步骤、基本方法的理解与掌握&#xff1b; 2&#xff0e;提高学生利用课堂所学知识解决实际问题的能力&#xff1b; 3&#xff0e;提高学生综合应用所学知识解决实际问题的能力。 二、实验任务 1、 编…

为什么mac文件拖拽不了 mac文件拖不进硬盘里 macbookpro文件无法拖进移动硬盘 Tuxera NTFS for Mac 2023绿色

如果你是一位Mac用户&#xff0c;你可能会遇到这样的问题&#xff1a;你想把Mac上的文件拖拽到其他位置&#xff0c;比如桌面、文件夹或者外接硬盘&#xff0c;但是却发现无法操作&#xff0c;这是为什么呢&#xff1f;这篇文章将为你解答为什么mac文件拖拽不了&#xff0c;以及…

Web安全-浏览器安全策略及跨站脚本攻击与请求伪造漏洞原理

Web安全-浏览器安全策略及跨站脚本攻击与请求伪造漏洞原理 Web服务组件分层概念 静态层 &#xff1a;web前端框架&#xff1a;Bootstrap&#xff0c;jQuery,HTML5框架等&#xff0c;主要存在跨站脚本攻击脚本层&#xff1a;web应用&#xff0c;web开发框架&#xff0c;web服务…

Linux从入门到精通 --- 2.基本命令入门

文章目录 第二章&#xff1a;2.1 Linux的目录结构2.1.1 路径描述方式 2.2 Linux命令入门2.2.1 Linux命令基础格式2.2.2 ls命令2.2.3 ls命令的参数和选项2.2.4 ls命令选项的组合使用 2.3 目录切换相关命令2.3.1 cd切换工作目录2.3.2 pwd查看当前工作目录2.4 相对路径、绝对路径和…

vue2+elementUi的两个el-date-picker日期组件进行联动

vue2elementUi的两个el-date-picker日期组件进行联动 <template><el-form><el-form-item label"起始日期"><el-date-picker v-model"form.startTime" change"startTimeChange" :picker-options"startTimePickerOption…

c# wpf template itemtemplate+ListBox

1.概要 2.代码 <Window x:Class"WpfApp2.Window7"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http://schemas.microsoft.com/expression/blend/…

【opencv】示例 3calibration.cpp 利用OpenCV库进行三路相机校准

此代码是一个利用OpenCV库进行三路相机校准的C程序。这个示例程序主要用于校准水平摆放的三台相机。 以下是关键函数及其功能的简要总结&#xff1a; help(char** argv): 显示程序的使用方法。calcChessboardCorners(Size boardSize, float squareSize, vector<Point3f>&…