vue学习笔记----基础使用

1 篇文章 0 订阅
1 篇文章 0 订阅

Vue使用CDN

<script src="https://unpkg.com/vue/dist/vue.js"></script>

Vue对象的格式

<div id="root">加油,{{name}}</div>
// {{这里可以放表达式变量函数等}}
<script type="text/javascript">  
    //方式一 ,此处是el 和data的
        // 创建vue对象 其中包含 el(某个元素) data(数据)    
        new Vue({        
        // # id选择器        
        // . class选择器        
        el:"#root",        
        data:{          
        name:"Will"        
        },   
        })
    //方式二   使用组件的话data需要写成函数式  
        const v = new Vue({                        
         data: function () {
            return {
                name: "Will",
                url: "https://www.baidu.com"
            }
        },   
        })
        v.$mount("#root")
    	//通过这种方法绑定对象
</script>

模板语法

插值语法

​ 将vue的data插入到网页的显示内容中{{ name }}。

指令语法

​ 将vue中的数据放到标签。

​ v-bind是单向绑定,即vue对象中data改变了页面中对应的值会改变,但是页面中值改变不会影响data的值。

​ v-model是双向绑定,即是某一方改变之后对应的数据不会变。v-model只能用于输入类的参数。

	// 插值语法
<div id="root">加油,{{name}}<br>
    //指令语法 v-bind:href 也可以简写为:href
    <a v-bind:href="url">linkto</a>
    <a :href="url">linkto</a>
    
    //指令语法 v-model:value="xxx" 输入参数的属性名为value也可以简写为 v-model="xxx"
    <input type="text "v-model:value="url">
    <input type="text "v-model="url">
</div>

MVVM

model :模型(指数据)

view :视图

viewmodel:vue中的实例对象。

在这里插入图片描述

Object.defineProperty

释义

其作用是为一个对象增添属性,并且设置属性的可删除,可变化等属性,并且可以将属性值与其他的变量进行关联。如果直接将某个变量的值赋予到属性,那么之后该变量的值变化,对应的属性值是不会变化的,但是通过Object.defineProperty中的get 将变量值赋予到属性,变量值会映射到属性。

   const v = new Vue({
        // # id选择器
        // . class选择器
        data: function () {
            return {
                name: "Will",
                url: "https://www.baidu.com"
            }
        },
    })
    v.$mount("#root")

    let age = 22
    let person = {
        name: "will"
    }
    Object.defineProperty(v, "age", {
    /*
    指定三个参数,对象,属性名,属性值相关配置
	value 直接指定值,enumerable 可遍历的默认为false
	writable 是否可改变 默认为false  不能与get同用
	configurable 是否可删除 默认为false
	get()     set(value) 方法 其中value是获取到的变化的值。
    get:funtion(){} 简写为get()	
    */

        // value: 22,
        // enumerable:true,
        // writable:true,
        // configurable:true,
        get:function () {
        //get(){  return xxx}
			//值与变量绑定
            return  age
        },
        set(value){
            console.log(value)
            console.log("modify value")
			//将变化的值在赋值给变量
            age = value
        }
    })
    console.log(person)
数据代理

数据代理:通过一个对象完成对另一个对象数据的读写。

在vue对象中,data的数据会在 vm的_data复制一份,然后vue对象中会生成对应的data中的key,

vue通过Object.definePropert添加对应的key,以及get/set完成对_data的数据操作,完成数据代理。

事件处理

基础使用

网页中存在与用户交互,需要处理相关事件,并且处理函数中会默认有event(鼠标事件),但是如果对事件函数传入了参数,如果还需要使用event则 click( e v e n t , p a r 1 , p a r 2... ) , 使 用 event,par1,par2...),使用 event,par1,par2...),使event。如果没有参数可以直接写@click。

如代码中的

<div id="root">
    <button v-on:click="click">美女荷官</button>
    //也可以简写为@click
    <button v-on:click="click($event,250)">美女荷官</button>
</div>
<script type="text/javascript">
    const v = new Vue({

        data: function () {
            return {
                name: "Will",
                url: "https://www.baidu.com"
            }
        },
        methods:{
            click(event,number){
                alert("666")
            }
        }
    })
    v.$mount("#root")
</script>
</body>
在这里插入代码片
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值