【Vue】Vue初步学习

VUE 学习


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

<script>
    var data = {a:1}
    var vm = new Vue({
        el:'#app',
        data:data
    })
</script>


1、Object.freeze(obj); # 阻止修改obj的属性
2、Vue暴露的实例属性和方法,都有前缀$,以便与用户定义的属性区分开
例如: $data  $el  $watch
vm.$data == data
3、$watch可以观察某个属性变化之前和之后的值
vm.$watch('a',function(newVal,oldVal){
    
})

4、v-once指令,执行一次性插值,当数据改变时,插值处的内容不会更新。
<span v-once>这个值将不会改变:{{ msg }}</span>

5、v-html指令 :{{}}大括号会把数据默认当成文本,如需输出html,则需使用v-html标签

<p v-html></p>

6、v-bind指令:绑定属性
<div v-bind:id="qq"></div>
7、v-if v-if-else v-else
8.修饰符 .stop 当前执行完会停止
<span @click="click1">
    <span @click.stop = "click2"></span>
</span>
有.stop执行完click2就不会执行click1
没有.stop执行完click2,继续执行click1

9、class和style绑定

<div
    class="test"
    v-bind:class="{redBtn:isRed,greenBg:isGreen}"
    v-bind:class="['redBtn','greenBg']"
    v-bind:class="[isRed ? 'redBtn' : '',]"
    v-bind:style="{color:colorP,background:backgroundP}"
>

Hello VUE

</div>

<script>

    vm = new Vue({
        el:"#app",
        data:{
            isRed:true,
            isGreen:true,
            colorP:'#FFF',
            backgroundP:'#000ddd'
        }
    });

</script>

<style>
.test{}
.redBtn{}
.greenBg{}
</style>

10、v-show 的元素会一直渲染,只是通过简单的控制显示或不显示
<div id="app">
    <h1 v-show="ok">Hello H1!</h1>
</div>

<script>

    vm = new Vue({
        el:"#app",
        data:{
            ok:true //如果是true就显示,false则不显示
        }
    });

</script>

11、v-for 列表渲染

<li v-for="item in items">
    {{ item.message }}
</li>
<li v-for="val in Object" >
    {{ val }}
</li>

<li v-for="item,index in items" :key="index">
    {{ index }}
    {{ item.message }}
</li>

<li v-for="val,key in Object" :key="key">
    {{ key }}
    {{ val }}
</li>

加了key值,列表就有了唯一性,会根据key自动排序

<script>

</script>

12、简写 v-bind:key 等同于 :key
v-on:click 等同于 @click


13、事件处理:v-on:click
<button v-on:click="counter += 1"></button>
<button v-on:click="greet"></button>

有时候需要在内联语句中访问原始DOM事件,可以用 $event 把它传入方法

<button v-on:click="greet('str',$event)"></button>

<script >
    vm = new Vue({
        el:'#app',
        data:{
            counter:100
        },
        methods:{
            greet:function(str,event){
                console.log(str);
                console.log(event);
            }
        }
    });
</script>

14、事件修饰符 (多个修饰符可以串联)
.stop //阻止事件继续
.prevent //不在重载页面
.capture //
.self
.once
.passive

15、表单输入绑定
v-model 双向绑定
16、组件
this.$emit('clicknow',this.count) //触发函数
组件中,通过<slot></slot>插槽,方便组件动态插入HTML代码
17、组件注册
全局注册
局部注册


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值