e.target.value和 binding.value 区别

e.target.valuebinding.value 都是在 Vue.js 中用于处理事件绑定时的值,但它们的使用场景和含义有所不同,分别用于普通的 DOM 事件和自定义指令。

  1. e.target.value
    • 这是常用于原生 DOM 事件处理函数中的一个属性,用于获取事件目标元素的值。
    • 在事件处理函数中,e 是事件对象,e.target 表示触发事件的 DOM 元素。对于输入元素(例如 <input><textarea><select> 等),e.target.value 可以获取用户输入的值。

示例:

html 复制代码
<template>
  <input type="text" @input="handleInput" />
</template>

<script>
export default {
  methods: {
    handleInput(e) {
      console.log('用户输入的值:', e.target.value);
    },
  },
};
</script>
  1. binding.value
    • 这是用于自定义指令中的一个属性,用于获取在指令绑定时传递给指令的值。
    • 在自定义指令的定义中,binding 是一个包含有关指令绑定信息的对象,其中的 value 属性用于获取传递给指令的值。

示例:

html 复制代码
<template>
  <div v-my-directive="directiveValue">Custom Directive Example</div>
</template>

<script>
// 自定义指令
Vue.directive('my-directive', {
  bind(el, binding) {
    console.log('传递给指令的值:', binding.value);
  },
});

export default {
  data() {
    return {
      directiveValue: 'Hello from directive!',
    };
  },
};
</script>

总结:

  • e.target.value 用于获取事件目标元素的值,通常在事件处理函数中使用。
  • binding.value 用于获取自定义指令绑定时传递给指令的值,通常在自定义指令的定义中使用。
相关推荐
榴莲CC5 分钟前
VK1620 抗噪数显LED驱动芯片数码管显示IC内置 RC振荡器/8级整体亮度可调
前端
@Autowire9 分钟前
Layout-box-sizing是 CSS 中控制元素盒模型计算方式的核心属性,直接决定了元素的 width/height 是否包含内边距和边框
前端
alamhubb10 分钟前
反感pnpm的全链路污染?可以了解下这个对原项目零侵入,零修改完全兼容npm的monorepo工具
前端·javascript·node.js
叁两11 分钟前
“死了么”用户数翻800倍,估值近1亿,那我来做个“活着呢”!
前端·人工智能·产品
2501_9481949832 分钟前
RN for OpenHarmony AnimeHub项目实战:正在热播页面开发
javascript·react native·react.js
2501_9445210033 分钟前
rn_for_openharmony商城项目app实战-语言设置实现
javascript·数据库·react native·react.js·harmonyos
AdleyTales39 分钟前
vscode识别不了@提示找不到路径解决
前端·javascript·vscode
去哪儿技术沙龙1 小时前
去哪儿网前端代码自动生成技术实践
前端·ai编程
前端九哥1 小时前
装个依赖把公司电脑干报废了?npm i 到底背着我干了啥?
前端·javascript
溪海莘1 小时前
React入门:跟读官方快速入门教程(前端小白)
前端·react.js·前端框架