首页 > 其他分享 >模拟Vue2的v-model

模拟Vue2的v-model

时间:2023-08-10 23:47:57浏览次数:39  
标签:username function querySelector value userinfo Vue2 model document 模拟

模拟Vue2的v-model

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div>
    <!-- <button id="myBtn">改变username</button>-->
    <label for="myInput">请输入些什么:</label><input type="text" id="myInput"/>
    <h1 id="myTitle"></h1>
</div>

</body>
<script>

    let userinfo = {
        username: '小明'
    }
    //初始化时反显变量的值
    updateDom(userinfo.username)
    // 利用Object.defineProperty监听对象值的变化
    watcher();

    function watcher() {
        Object.defineProperty(userinfo, 'username', {
            set(value) {
                updateDom(value)
            },
            get(val) {
                return val
            }
        })
    }

    //     更新dom数据
    function updateDom(value) {
        document.querySelector('#myInput').value = value
        document.querySelector('#myTitle').innerHTML = value
    }

    //     给input绑定input事件,实时修改username的值
    document.querySelector('#myInput').oninput = function (e) {
        let value = e.target.value
        userinfo.username = value
    }
    //
    //     document.querySelector('#myBtn').onclick = function () {
    //         let value = '小红'
    //         userinfo.username = value
    //     }

</script>
</html>

运行效果:

chrome_3QcEHfo4yY

标签:username,function,querySelector,value,userinfo,Vue2,model,document,模拟
From: https://www.cnblogs.com/ma1998/p/17621893.html

相关文章

  • Arduino analogRead() 读取模拟引脚数据
    analogRead()用于从Arduino的模拟输入引脚读取数值。在ArduinoUNO上,除了14个数字输入/输出引脚,还带有6个模拟引脚,即板上编号带A的引脚。引脚A0到A5被用来获取模拟信号的输入值,这些引脚有一个预装的ADC(Analog-to-DigitalConverter,模数转换器),它将模拟信号转换为......
  • uniapp Vue2升级Vue3使用Vite分包
    uniappVue2使用webpack打包配置根目录下创建vue.config.js文件constpath=require('path')constCopyWebpackPlugin=require('copy-webpack-plugin')//最新版本copy-webpack-plugin插件暂不兼容,推荐v5.0.0letfilePath=''letTimestamp=''//......
  • CSP模拟 17
    今天挂了\(\text{85\pts}\),谨记本地编译要开\(\operatorname{O}_2\),离线处理的题最后输出一定要再排序排回来。A.弹珠游戏考虑用一个01串表示每个人的状态,表示每个人所拥有球的情况。例如R->100、G->010、B->001、RG->110、RB->101、BG->011。考虑贪心,对于一个新的弹......
  • CSP模拟17
    CSP模拟17T1弹珠游戏考虑贪心,枚举右端点,产生贡献的是没有填满的人,所以先让某些人填满是最优的。优先填满已经填了2个的,再填1个的。方案数就是每次填了相同个数的人数的乘积。code#include<iostream>#include<cstdio>#include<cstring>#include<vector>usingnamespaces......
  • 2023.8.7模拟
    T1DescriptionSolutionCode点击查看T2DescriptionSolutionCode点击查看T3DescriptionSolutionCode点击查看T4抽卡I([THUPC2023决赛]老hu机)link:https://www.luogu.com.cn/problem/P9379Description俺のターン,ドロー!(然后对面就翻开神宣把你拍出去......
  • Unity的AssetPostprocessor之Model:深入解析与实用案例 1
    UnityAssetPostprocessor模型相关函数详解在Unity中,AssetPostprocessor是一个非常有用的工具,它可以在导入资源时自动执行一些操作。在本文中,我们将重点介绍AssetPostprocessor中与模型相关的函数,并提供多个使用例子。OnPostprocessModelOnPostprocessModel是AssetPostprocesso......
  • 【考后总结】8 月 CSP-S 模拟赛 3
    8.10CSP模拟17BohemianRhapsody-QueenIsthisthereallife?Isthisjustfantasy?Caughtinalandslide,noescapefromrealityOpenyoureyes,lookuptotheskiesandseeI'mjustapoorboy,IneednosympathyBecauseI'measycome,eas......
  • 项目vue2升级vue3
    Vue2迁移vue3操作指南#一、前言有个自动化迁移工具gogocode-cli,尝试后发现不好用且得不偿失,就放弃了,感兴趣的可以去了解一下,本指南选择手动迁移迁移开始之前,我们先来梳理下思路:现在有一个vue2的项目,首先我们升级框架,得到了一个vue3的框架,但是上面放着vue2的代码,跑不起来,然后我......
  • 疯狂模拟四V我165分总结
    模拟4总结目录模拟4总结总体上个体上:第一题:第二题没看第三题老师布置的题目:第四题,eZ题目总体上个人感觉这一次做题非常舒服,第一题和第四题都想出来了,只可惜第三题做对了一点(最大值)个体上:第一题:很可惜,tarjan写错了,实际得分是65分......说明算法流程不是很掌握确实tarjan容......
  • CSP模拟-17
    前言仔细想了想,考试的时候其实对正解有些思路,但自己认为正确性有问题,所以没这么写,大寄,考了倒2,呜呜呜┭┮﹏┭┮T1弹珠游戏下面的匹配的含义:\(R\)的匹配指\(G,B\),其中\(R\)为被匹配字母,\(G,B\)为匹配字母;\(G\)的匹配指\(R,B\)以此类推。我们用把每个人现在手里的牌用十......