其实楼上有几位的回答,基本都对上了,总结一下就是:
@
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 的结构化标记。