<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> </head> <body> <div id="app">{{ message }} <button @click="count++">{{count}}</button> <button @click="showInfo1">点我提示信息1(不传参)</button> </div> <script type="module"> import { createApp } from 'https://unpkg.com/vue@3/dist/vue.esm-browser.js' createApp({ data() { return { message: 'Hello Vue!', count: 0 } } }).mount('#app'); const vm = new Vue({ el:'#root', data:{ name:'尚硅谷', }, methods:{ showInfo1(event){ // console.log(event.target.innerText) // console.log(this) //此处的this是vm alert('同学你好!') }, } }) </script> </body> </html>
时间: 2024-04-26 17:23:35 浏览: 199
根据您提供的代码,出现错误的原因可能是因为您同时使用了 Vue.js 3 和 Vue.js 2。具体来说,您在 HTML 文件中引入了 Vue.js 3(通过 `https://unpkg.com/vue@3/dist/vue.global.js` 引入),但在 JavaScript 文件中使用了 Vue.js 2(通过 `new Vue()` 创建实例)。
为了解决这个问题,您需要选择一种 Vue.js 版本,并在整个项目中始终使用该版本。如果您决定使用 Vue.js 3,您可以删除 `new Vue()` 创建实例的代码,并使用 `createApp()` 方法创建 Vue 应用程序。
这是一个修改后的示例代码,仅使用 Vue.js 3 创建实例:
```
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
</head>
<body>
<div id="app">
{{ message }}
<button @click="count++">{{count}}</button>
<button @click="showInfo1">点我提示信息1(不传参)</button>
</div>
<script type="module">
const app = Vue.createApp({
data() {
return {
message: 'Hello Vue!',
count: 0
}
},
methods: {
showInfo1(event) {
alert('同学你好!')
}
}
})
app.mount('#app')
</script>
</body>
</html>
```
希望这可以帮助您解决问题。
阅读全文