“Vue v-model 指令”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
第19行: 第19行:
  
 
一来一回就是两个方向
 
一来一回就是两个方向
 +
 +
=== 完整示例代码 ===
 +
<syntaxhighlight lang="html">
 +
<html>
 +
    <head>
 +
        <meta charset="UTF-8">
 +
        <meta name="viewport" content="width=device-width,initial-scale=1.0">
 +
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
 +
        <title>v-model 指令</title>
 +
    </head>
 +
    <body>
 +
       
 +
        <div id="app">
 +
            <input type="button" value="修改 message" @click="setMsg">
 +
            <input type="text" v-model="message" @keyup.enter="getMsg">
 +
            <h2>{{ message}}</h2>
 +
        </div>
 +
 +
        <!-- 开发环境版本,包含了有帮助的命令行警告 -->
 +
        <script src="vue.js"></script>
 +
       
 +
        <script>
 +
            var app = new Vue({
 +
                el:"#app",
 +
                data: {
 +
                    message:"hello world"
 +
                },
 +
                methods:{
 +
                    getMsg: function() {
 +
                        alert(this.message);
 +
                    },
 +
                    setMsg: function(){
 +
                        this.message = "hello china"
 +
                    }
 +
                }
 +
            })
 +
        </script>
 +
 +
    </body>
 +
</html>
 +
</syntaxhighlight>

2023年8月9日 (三) 01:45的版本

https://www.bilibili.com/video/BV12J411m7MG/?p=17

获取和设置表单元素的值(双向数据绑定)

<div id="app">
    <input type="text" v-model="message"/>
</div>
var app = new Vue({
    el:"#app",
    data:{
        message:"hello world"
    }
})

解析完毕后,两个值会关联起来

什么叫双向绑定呢?

解析后,message 的值会同步到表单元素;当我们更改了表单元素的值之后,Vue 也会把这次的更新同步到 message

一来一回就是两个方向

完整示例代码

<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>v-model 指令</title>
    </head>
    <body>
        
        <div id="app">
            <input type="button" value="修改 message" @click="setMsg">
            <input type="text" v-model="message" @keyup.enter="getMsg">
            <h2>{{ message}}</h2>
        </div>

        <!-- 开发环境版本,包含了有帮助的命令行警告 -->
        <script src="vue.js"></script>
        
        <script>
            var app = new Vue({
                el:"#app",
                data: {
                    message:"hello world"
                },
                methods:{
                    getMsg: function() {
                        alert(this.message);
                    },
                    setMsg: function(){
                        this.message = "hello china"
                    }
                }
            })
        </script>

    </body>
</html>