惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
博客园 - 聂微东
博客园 - 叶小钗
量子位
Google DeepMind News
Google DeepMind News
Cyberwarzone
Cyberwarzone
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
P
Privacy & Cybersecurity Law Blog
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
雷峰网
雷峰网
C
Cybersecurity and Infrastructure Security Agency CISA
Schneier on Security
Schneier on Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
美团技术团队
T
Tenable Blog
T
Threatpost
S
Security Affairs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
C
Cisco Blogs
The Last Watchdog
The Last Watchdog
Engineering at Meta
Engineering at Meta
Microsoft Azure Blog
Microsoft Azure Blog
A
Arctic Wolf
Attack and Defense Labs
Attack and Defense Labs
AWS News Blog
AWS News Blog
AI
AI
W
WeLiveSecurity
H
Help Net Security
G
Google Developers Blog
PCI Perspectives
PCI Perspectives
博客园_首页
S
Securelist
B
Blog RSS Feed
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Forbes - Security
Forbes - Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
L
Lohrmann on Cybersecurity
云风的 BLOG
云风的 BLOG
Martin Fowler
Martin Fowler
C
CERT Recently Published Vulnerability Notes
H
Hacker News: Front Page
The GitHub Blog
The GitHub Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Spread Privacy
Spread Privacy
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threat Research - Cisco Blogs
博客园 - 司徒正美
Google Online Security Blog
Google Online Security Blog
T
The Blog of Author Tim Ferriss

Vue.js

AI 特效 shadcn-vue-admin 已升级至 vite8 - V2EX 我真的要放弃 Vue,改用 React 了 - V2EX 求推荐美观、功能全的 vue AI chat 组件 - V2EX [求助贴] 有没有推荐的 vue3 页面设计器 大屏设计器(源码可以拿来二开的 开源 or 收费) - V2EX 有没有大佬在正式项目里使用 rolldown 了 - V2EX 用 reactive 來實現 oo 對象的封裝 - V2EX Vue 的 reactive 会有人专门用吗? - V2EX 大佬们,想在 vue 中集成一个 excel,有什么方案? - V2EX vue3 无法手动控制 keepalive 的缓存| fork 了独立的 keep-alive 组件|支持手动删除缓存或者添加缓存 - V2EX WebStorm 写 个 v-for, cpu 就狂飙 - V2EX Nuxt UI 4 可以免费用 Pro 了 - V2EX Vue2 除了 ele-table-editor,还有没有其他“子表单(inline-formset)”的组件? - V2EX 请问 vue 的 defineEmits 类型如何使用动态键名 - V2EX VUE 开发求助 - V2EX 屎代码靠我自己骂已经不解气了,佬们来看个笑话 - V2EX 我的 mp4 播放不出来! - V2EX 有一个 8K 行的 VUE 代码文件用什么 AI 可以解耦 - V2EX 求助 Vue 大佬,为什么使用 reactive 数据没有双向绑定? - V2EX uniapp 求助 - V2EX Vue3 编写的最佳实践是怎样的? - V2EX 开发一款轻便简洁的论坛程序 - V2EX VueConf 2025 所有演讲嘉宾及日程已确定, 7 月 12 日,深圳见! - V2EX vue3+ELInput 无法输入的问题 - V2EX 想问一下 pinia 持久化到 localStorage 如何实现有效期 - V2EX 有什么适用于 Vue/Nuxt 的表单/问卷/试卷+设计器库么 - V2EX vue_cli 用到 env 环境变量值特殊字符处理 - V2EX 统计基于 vue 的汽水音乐电脑版用了哪些开源组件 - V2EX ant-design-vue 好像不怎么维护了, vue 有什么比较靠谱的 ui 组件库吗 - V2EX 关于二次封装 element-plus 组件库主题问题 - V2EX 🎉 VueConf 2025 来啦, 7 月 12 日,深圳见! - V2EX vue 怎么 5 个月不更新了 - V2EX 前端 props 单向数据流 vs 状态管理流 你更能接受哪种代码 - V2EX WSL2 + System Proxy 后, vite 启动的项目,随机一部分网络请求变得巨慢,求指导。 - V2EX vue vite 打包 白屏问题 - V2EX 外行搞前端构建环境真的很头疼,有谁能帮忙搞定这个 Nuxt3 开源项目的构建?有偿。 - V2EX vue 指令更新问题 - V2EX 为什么 vue 的 nuxt.js 不跟进 nextjs 的 app route 目录结构 - V2EX 使用 Ant design X vue 组件库怎么解决无法正确展示 MarkDown 格式字符串的问题? - V2EX shadcn, shadcnvue 全是基于 tailwindcss 的,没有基于 unocss 的嘛? - V2EX vue3 的 template typescript 支持稀烂,退坑 - V2EX 组件持久化的问题请教 - V2EX Vue3 tsx 应该用 props 还是 emit 传递事件? - V2EX 话说我怎么就懵逼了呢? Vue3 的泛型组件 generic="T"? - V2EX 请教 Vue3 + typescript 最佳实践问题 - V2EX vue3 纯前端如何生成 icns 格式图片? - V2EX 你们写 vue 一定是按照 vue 的脚手架的目录结构来写吗? - V2EX 大佬们, vue3 新人求教,就没有办法对 ref 包装的 obj 进行解构吗 - V2EX vue3 中 v-show 分页问题 - V2EX el-table 使用 expand 展开倒数第二行时,最下面一行会错乱,我把第一列的数据进行了合并,求问大家怎么解决呀?
请问 vue3 的 onclick 和 @click 有什么区别 - V2EX
zhengfan2016 · 2025-12-19 · via Vue.js

这是一个创建于 178 天前的主题,其中的信息可能已经有所发展或是发生改变。

如题,问了 gemini ,发现答案胡扯的,gemini 说写 onclick 不会触发 vue 响应式( ref 元素修改),但是我实测在 div 上写:onclick 确实能触发响应式修改,所以我有点纳闷,这两种写法到底有什么区别

BruceXu

1

BruceXu      2025 年 12 月 19 日   ❤️ 1

我的 AI 解释得很清楚,可惜没法贴给你.

简单来说,前者是原生 html 的事件,后者是 vue 的事件.和响应式是两码事,都能触发.

一般是推荐用后者,走 vue 指令系统,可以多一些功能.

hengshenyu

2

hengshenyu      2025 年 12 月 19 日 via Android

:onClick 吧? vue 支持将事件已 props 的形式传递(声明也是),onXxx = @xxx

jspatrick

3

jspatrick      2025 年 12 月 19 日

在 jsx 或 tsx 里只有 onClick 可以用,@click 是 onClick 的简写,vue 的 template 里一般用简写,响应式只跟定义的响应式变量有关,跟函数如何绑定无关,任意函数都可以触发响应式

mengdodo

5

mengdodo      2025 年 12 月 19 日

你不用 vue 且纯 html 也不加载 javascript 的情况下也能用 onclick ,但是 @click 只能 vue 下,懂了吧

kakakakaka8889

6

kakakakaka8889      2025 年 12 月 19 日

没啥区别啊,@click 只是一个语法糖就是简化的 onClick 写法而已

FakerLeung

8

FakerLeung      2025 年 12 月 19 日   ❤️ 2

楼上叽里咕噜说啥呢,怎么扯到 jsx 上了

:onclick 就是原生 html 的 onclick="" 的绑定方式 --> 所有原生属性都可以通过 :xxxx 来绑定
@click 是 vue 的 :onclick 的语法糖,同时支持多个修饰符,可以快速实现一些功能,如 @click.prevent

DICK23

13

DICK23      2025 年 12 月 19 日

vue 上应该是一致的,solidjs 中这两个写法一个是原生事件,一个是合成事件

xiaoxi123

14

xiaoxi123      2025 年 12 月 19 日

还是 微优易 黑魔法多啊🤔

rich1e

15

rich1e      2025 年 12 月 19 日

其实楼上有几位的回答,基本都对上了,总结一下就是:

@click 是 Vue 封装的指令,是特有的语法糖。

- 在 .vue 文件的 <template> 里面直接使用;
- @click 也可以写作 “v-on:click”;
- @click 内部还封装了修饰符,e.g. '@click.stop' / '@click.once' 等等;

onclick 属于 HTML 规范,跟 Vue 没关系。即便没有 Vue ,onclick 也可以工作。

多说一句,onclick 不是 onClick 。

如果想在 Vue 里面使用 onClick ,一般是指使用 jsx 编写代码,文件后缀通常为 jsx/tsx 。

当然,.vue 文件也可以写 jsx ,需要声明 `<script lang="jsx">` 或者 `<script lang="tsx">`。

PS:JSX (JavaScript XML) 是 JavaScript 的一种语法扩展,它允许你在 JS 代码中写出类似 HTML/XML 的结构化标记。

Wanex

16

Wanex      2025 年 12 月 19 日

没区别,@click 就是 onclick 的语法糖

gotOwt

17

gotOwt      2025 年 12 月 19 日

一个是原生的,一个是 vue 封装的

估计好多人都没写过原生 html css js 吧。

AsuraTG

22

AsuraTG      2025 年 12 月 19 日

### 最佳实践建议
在 Vue 开发中, 永远不要使用 onclick ,原因如下:

1. 代码风格一致性 :保持所有事件绑定都走 Vue 的系统。
2. 安全性 :onclick 中的字符串代码容易引起 CSP (内容安全策略) 问题,也更容易导致 XSS 风险(如果你动态拼接字符串的话)。
3. 可维护性 : @click 能够清晰地指向组件内部逻辑,利于代码阅读和重构。
唯一可能用到 onclick 的场景 :
如果你正在集成某些非常古老的第三方库,或者需要在 Vue 挂载之前的极短时间内(例如 index.html 的 loading 状态)响应点击,才可能会用到原生 onclick 。但在 Vue 组件内部,请坚持使用 @click

lizy0329

23

lizy0329      2025 年 12 月 19 日

回答都是啥玩意
@click 就是 onclick 的语法糖
@click.native 才是 dom 元素上的原生 click 事件