美文网首页
v-bind和v-model

v-bind和v-model

作者: 新世界的冒险 | 来源:发表于2018-07-16 15:13 被阅读0次

v-model

v-model指令,理解为绑定数据源。就是把数据绑定在特定的表单元素上,可以很容易的实现双向数据绑定。

修饰符

.lazy:取代 imput 监听 change 事件。
.number:输入字符串转为数字。
.trim:输入去掉首尾空格

<!DOCTYPE html>
<html>
<head>
    <title>v-model</title>
</head>
<body>
    <div id="app">
        <p>文本信息:{{message}}</p>
        <p>v-model:<input type="text" v-model='message'></p>
        <p>多选按钮绑定一个值</p>
        <div>
            <input type="checkbox" id="ischeck" v-model='isTrue'>
            <label for="ischeck">{{isTrue}}</label>
        </div>
        <p>多选按钮绑定一个数组</p>
        <div>
            <input type="checkbox" id="jiangsu" value="nanjing" v-model='city'>
            <label for="jiangsu">jiangsu</label>
            <input type="checkbox" id="zhejiang" value="hangzhou" v-model='city'>
            <label for="zhejiang">zhejiang</label>
            <input type="checkbox" id="shandong" value='jinan' v-model='city'>
            <label for="shandong">shandong</label>
            <p>{{city}}</p>
        </div>
        <p>单选按钮绑定数据</p>
        <div>
            <input type="radio" id="man" value='男' v-model='sex'>
            <label for='man'>男</label>
            <input type="radio" id='women' value='女' v-model='sex'>
            <label for='women'>女</label><br>
            <p>性别:{{sex}}</p>
        </div>
    </div>
<script type="text/javascript" src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>
<script type="text/javascript">
    var vm=new Vue({
        el:'#app',
        data:{
            message:'Hello World!',
            isTrue:true,
            city:[],
            sex:'男'
        }
    })
</script>
</body>
</html>
image.png

v-bind

v-bind是处理HTML中的标签属性的,例如<div></div>就是一个标签,<img>也是一个标签,我们绑定<img>上的src进行动态赋值。

    <!DOCTYPE html>
<html>
<head>
    <title>v-bind</title>
    <style type="text/css">
        .classColor{color:red;}
        .classFontSize{font-size:30px;}
        .classBg{background: orange;}
    </style>
</head>
<body>
    <div id="app2">
        <img v-bind:src='imgSrc'>
        <!-- v-bind:src缩写为 :src -->
        <p :class='classN1'>直接绑定class样式</p>
        <!-- 绑定classFontSize并进行判断,在isClass为true时显示样式,在isClass为false时不显示样式 -->
        <p :class='{classFontSize:isClass}'>绑定判断</p>
        <!-- 绑定class中的数组 -->
        <p :class='[classA,classB]'>绑定class中的数组</p>
        <!-- 绑定class中使用三元表达式判断 -->
        <p :class="isClass ? classB : classA">绑定class中使用三元表达式判断</p>
        <!-- 绑定style -->
        <p :style="{color:textColor,fontWeight:fontW}">绑定style</p>
        <!-- 用对象绑定style样式 -->
        <p :style="styleObject">用对象绑定style样式</p>
    </div>
    <script type="text/javascript" src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>
    <script type="text/javascript">
        
        var app2=new Vue({
            el:'#app2',
            data:{
                imgSrc:'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1531733388997&di=6e3fab7d3c37994bac9a7cf5176ece6a&imgtype=0&src=http%3A%2F%2Fscimg.jb51.net%2Fallimg%2F160223%2F14-1602230916130-L.jpg',
                classN1:'classColor',
                isClass:true,
                classA:'classFontSize',
                classB:'classBg',
                textColor:'blue',
                fontW:'bold',
                styleObject:{
                    fontSize:'20px',
                    color:'green'
                }
            }
        })
    </script>
</body>
</html>
image.png

相关文章

网友评论

      本文标题:v-bind和v-model

      本文链接:https://www.haomeiwen.com/subject/krcbpftx.html