vue的基础知识点总结

<template>

<h1>监听对象</h1>

<p>computed:{{ numbb }}</p>

<input type="text"  v-model.number="numm"  placeholder="number" />

<p>watch:{{nummm}}</p>

<h3>列表渲染</h3>

<p>对象</p>

/*

v-for  需要指定的key  key要求是唯一   提高虚拟dom比较  (diff)的速度也可以提高对列表进行 过  滤  排序  的渲染速度

key 值在相同的兄弟元素中要求唯一  

 */

<div v-for="(value, key)  in { name: '名字' , age:18 }" :key="key"> {{ key }}:{{value}} </div>

<p>数组</p>

<div v-for="(item ,index) in [5,7,8,1]"  :key="item"> {{index+1}}-{{item}} </div>

<h3>表单修饰符</h3>

lazy   无焦点时响应:{{ change }}]

number  字符串转数字:{{ numm + 10 }}

trim  两端去掉空白 :{{ changee}}

<input type="text" v-model.lazy="change" placeholder="lazy" />

<input type="text" v-model.lazy="numm" placeholder="number" />

<input type="text" v-model.lazy="changee" placeholder="trim" />

<h3>表单</h3>

<p>多选框</p>

<input  type="checkbox" value="唱"  v-model="hobby" /> 唱

<input type="checkbox" value="跳" v-model="hobby" /> 跳

<input type="checkbox" value="玩" v-model="hobby" /> 玩

<p>{{ hobby}}</p>

<p>单选</p>

<input  type="radio"  value="1"  v-model="gender" group="gender" />男

<input type="radio" value="2" v-model="gender" group="gender" />女

<input type="radio" value="3" v-model="gender" group="gender" />保密

<p>{{ gender}}</p>

<p>下拉列表</p>

<select  v-model="gender">

<option  value= "1">男</option>

<option value= "2">女</option>

<option value= "3">保密</option>

</select>

<div> v-if   v-else v-else-if  v-show</div>

<h3>自定义属性</h3>

<div>事件</div>

<h4 :title="context" @click="come('你好', context, $event)">

点我 也能有事件

</h4>

<p :style="{ color: 'blue', fontSize: '20px' }">颜色一号</p>

<p :style="{ color: 'red' }">颜色二号</p>

<!-- 后面判断是否绑定 -->

<p :class="{ active: agree, bold: true }">颜色三号</p>

<p class="active">{{ msg }}</p>

<input type="range" v-model.number="num" />

<p v-if="num > 10">看见</p>

</template>

<script>

export default {

// 生命周期

beforeCreate() {

// 有this data与methods 没有准备好

},

created() {

// 有data 和methods $el和实例没准备好

},

beforeMount() {

// 有$el 但是指令没有渲染

},

mounted() {

// 指令被渲染真实的dom

},

beforeUpdate() {

// dom没有渲染

},

updated() {

// dom渲染完毕

// 只要data更新 update和beforeupdate 都会被执行

},

beforeUnmount() {

// dom和methods可以正常访问

// v2beforeDestory

},

unmounted() {

// 卸载完毕 data和methods 访问不到 数据和模块切断练习

// v2 destoryed

},

computed: {

numbb: function () {

return this.numm + 2;

},

},

watch: {

numm: {

handler() {

this.nummm = this.numm + 3;

// console.log(11);

},

deep: true,

},

},

data() {

return {

nummm: 0,

numm: 10,

change: "",

changee: "",

gender: 1,

hobby: ["唱"],

msg: "哈哈哈",

num: 0,

context: "我是自定义属性",

agree: false,

};

},

methods: {

come(e, e2, e3) {

console.log(e, e2, e3);

},

},

};

</script>

<style lang="scss">

.active {

color: red;

}

.bold {

color: purple;

}

</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值