还有一个问题,我们使用form表单如何传输数字呢?
    如下例子:

    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>收集表单</title>
    6. </head>
    7. <body>
    8. <script type="text/javascript" src="https://unpkg.com/vue/dist/vue.js"> </script>
    9. <div id="app">
    10. <form action="" @submit.prevent="myfunc">
    11. 输入您的年龄<input type="text" v-model="name">
    12. <button>提交</button>
    13. </form>
    14. </div>
    15. <script type="text/javascript">
    16. var vm = new Vue({
    17. el:"#app",
    18. data:{
    19. name:18,
    20. },
    21. methods:{
    22. myfunc(){
    23. alert( this.name)
    24. }
    25. }
    26. })
    27. </script>
    28. </body>
    29. </html>

    但是上面的会有一个问题

    我们可以在年龄窗口随意输入文字,我们更希望只能输入数字,怎么限制这点???

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>收集表单</title>
    </head>
    <body>
    <script type="text/javascript" src="https://unpkg.com/vue/dist/vue.js"> </script>
        <div id="app">
            <form action="" @submit.prevent="myfunc">
                输入您的年龄<input type="number" v-model="name">
                <button>提交</button>
            </form>
        </div>
    
    <script type="text/javascript">
        var vm = new Vue({
            el:"#app",
            data:{
                name:18,
            },
            methods:{
                myfunc(){
                    //我们发现其实这里面仍然是string
                    console.log(typeof this.name)
                }
            }
        })
    </script>
    </body>
    </html>
    

    我们发现我们即使修改了input类型为number,之后typeof this.name仍然是string
    所以上面的操作只是说我们input框中不能输入字母,但是其实最终保存的仍然是string
    那么我们可以使用v-model.number来实现

    <script type="text/javascript" src="https://unpkg.com/vue/dist/vue.js"> </script>
        <div id="app">
            <form action="" @submit.prevent="myfunc">
                输入您的年龄<input type="number" v-model.number="name">
                <button>提交</button>
            </form>
        </div>