7_vmodel.html 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <script src="./js/vue.js"></script>
  8. </head>
  9. <body>
  10. <div id="app">
  11. <!-- v-model 指令可以实现数据的双向绑定 -->
  12. <!-- 当输入框中的内容发生变化时 会自动更新到 msg 中的值中 -->
  13. <!-- 当 msg 中的值发生变化时 会自动更新到输入框中去 -->
  14. <!-- <input type="text" v-model="msg" @input="inputHandle"> -->
  15. <!-- <input type="text" v-model="msg" @change="changeHandle"> -->
  16. <!-- v-model 获取的值可以包含前后空格的 -->
  17. <!-- <input type="text" v-model="msg"> -->
  18. <!-- .trim 可以去掉字符串的前后空格 -->
  19. <!-- <input type="text" v-model.trim="msg"> -->
  20. <!-- v-model 默认获取的为字符串 -->
  21. <!-- <input type="text" v-model="msg"> -->
  22. <!-- .number 可以将输入的字符串转换为数字类型 -->
  23. <!-- <input type="text" v-model.number="msg"> -->
  24. <!-- .lazy v-model 可以实现懒加载 当文本框失去焦点时 才会更新到 msg 中的值中 (v-model才会工作) -->
  25. <input type="text" v-model.lazy="msg">
  26. <h1> 您输入的内容是:{{msg}}</h1>
  27. <button @click="getVal">按钮</button>
  28. </div>
  29. <script>
  30. new Vue({
  31. el: "#app",
  32. data: {
  33. msg: ""
  34. },
  35. methods: {
  36. getVal() {
  37. console.log(this.msg);
  38. // this.msg = "hello";
  39. console.log(typeof this.msg);
  40. },
  41. // input事件 :当文本框内的值发生变化的时候触发
  42. // inputHandle(){
  43. // console.log("input事件触发");
  44. // },
  45. // change事件 :当文本框失去焦点的时候触发
  46. // changeHandle(){
  47. // console.log("change事件触发");
  48. // }
  49. }
  50. })
  51. </script>
  52. </body>
  53. </html>