zoukankan      html  css  js  c++  java
  • vue.js权威指南----代码解释实例

    1:P61(值绑定)

    <input type="checkbox" v-model="toggle" :true-value="a" :false-value="b"/>
        <span>{{toggle}}</span>
    </div>

    对应的js

    var example = new Vue({
            el:'#example',
            data: {
                toggle: '',
                a:'aaa',
                b:'bbb'
            }
        });

    效果选中状态:

    2:P74 过滤器 filter语法

    js代码:

    var example = new Vue({
            el:'#example',
            data: {
                message: 'hello'
            },
            filters:{
                reserve:function(value,begin,end){
                    return value+begin+end;
                }
            }
        });

    相应的html

    <span>{{ message | reserve('arg1', 'arg2') }}</span>

    显示效果为: helloarg1arg2

    但是按照书中的例子出不来效果;P76双向过滤器出不来该效果:

    <div id="example">
        <p>{{message}}</p>
        <input type="text" v-model="message | filterExample"/>
    </div>

    js

    Vue.filter('filterExample',{
            read:function(val){
                return 'read'+val;
            },
            write: function(newval,oldval){
                return oldval+'write';
            }
    
        });
        var example = new Vue({
            el:'#example',
            data: {
                message: 'hello'
            }
            
        });

     P96 methods配置:html:

    <div id="example">
        <p>{{message}}</p>
        <button class="mybox" v-on:click="green"></button> 
    </div>

    对应的js代码:

    var example = new Vue({
            el:'#example',
            data: {
                message: 'hello'
            },
            methods:{
                green:function(event){//注意这里的event和target的使用方法
                    $(event.target).css('background','green');//使用$()形成                               jquery对象
                }
            }
            
        });

     P98 prevent阻止默认事件,stop阻止冒泡事件:

    <div id="example">
        <a v-on:click.stop.prevent="doThat" href="http://www.baidu.com">链接</a>
    </div>

    js代码:

    var example = new Vue({
            el:'#example',
            data: {
                message: 'hello'
            },
            methods:{
                green:function(event){
                    $(event.target).css('background','green');
                },
                doThat:function(){
                    alert('nihao');
                }
            } 
        });

    效果:点击链接后不会跳转,而是执行doThat函数,出现alert警告。

    P108 要注意组件的名称:

    var ddComponent=Vue.extend({
            template:'<p>this is a template</p>'
        });
        Vue.component('didi-component',ddComponent);
        var example = new Vue({
            el:'#example',
            data: {
                message: 'hello'
            }
        });

    这里组件didi-component的名字还可以写成component,但注意不要写成didiComponent的驼峰式写法

    相应的html为:

    <div id="example">
        <didi-component></didi-component>
    </div>
  • 相关阅读:
    js 把数组中每个元素的某个字段取出
    vue 实现单选/多选效果
    js常用的array方法
    js的split()和join()的用法
    HTML 转 PDF 之 wkhtmltopdf
    微信小程序api封装(promise)
    常用的正则表达式
    更改MySQL的存储目录
    CentOS 6.X 安装VirtualBox-5.1
    CentOS 6.X 安装VNC Server实现图形化访问
  • 原文地址:https://www.cnblogs.com/xiaozhumaopao/p/6400717.html
Copyright © 2011-2022 走看看