Vue3实现Hello和Counter

Posted 飞鹰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue3实现Hello和Counter相关的知识,希望对你有一定的参考价值。

小编之前的文章都是js和ts基础,基础完事之后,是时候向前端的主流框架发起挑战了,接下来小编主要针对现在比较流行的Vue3结合实例,和大家一起探讨一下Vue的基本语法和Vue3中提供的一些新特性,希望小编可以和大家一起成长,一起在前端的路上,越走越远。
我们常见的html模板,基本都是这样的

<!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>
</head>
<body>
    
</body>
</html>

按照我们之前的知识储备,想使用Vue.js,肯定要引入对应的js文件,这时候,我们的文件就变成了这样

<!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@next"></script><!-- 可以根据实际文件路径引入 -->
</head>
<body>
    
</body>
</html>

我们可以在代码中编写这样的代码,在页面中展示hello world

<!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@next"></script>
</head>
<body>
    <div id="root"></div>
</body>
<script>
Vue.createApp({
  template:\'<div>hello world</div>\' // 定义模板
}).mount("#root") // 设置挂载点
</script>
</html>

当然,我们还可以把代码写的更Vue一点,就像这样

<!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@next"></script>
</head>
<body>
    <div id="root"></div>
</body>
<script>
Vue.createApp({
  data(){
    return {
      content:\'hello world\'
    }
  },
  template:\'<div>{{content}}</div>\' // 定义模板
}).mount("#root") // 设置挂载点
</script>
</html>

可能大家看到这样奇奇怪怪的代码,会有一些蒙圈,不过今天只是熟悉熟悉,后续小编会把这些问题一一解释清楚。下面就是Counter。实现的就是在每一秒中,页面上的数字加一,借助Vue,代码可以写成这样

<!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@next"></script>
</head>
<body>
    <div id="root"></div>
</body>
<script>
Vue.createApp({
    data(){
        return {
            content:1
        }
    },
    mounted(){ // 生命周期函数,后续会专门说明
        setInterval(() => { // es6中的箭头函数
            this.content += 1 // this指向Vue实例
        },1000)
    },
    template:\'<div>{{content}}</div>\'
}).mount("#root")
</script>
</html>

以上就是借助Vue.js来实现的两个基本基本功能,大家可能和小编一开始接触Vue一样懵圈,不过不要紧,相信经过一段时间的熟悉,一定可以有个质的提升,一起加油!
大家还可以扫描二维码,关注我的微信公众号,蜗牛全栈。

以上是关于Vue3实现Hello和Counter的主要内容,如果未能解决你的问题,请参考以下文章

Vue3官网-高级指南(十七)响应式计算`computed`和侦听`watchEffect`(onTrackonTriggeronInvalidate副作用的刷新时机`watch` pre)(代码片段

vue3 响应式数据库—— reactive

vue3 响应式数据库—— reactive

vue3.2 基础及常用方法

vue3中的fragment(片段)组件

1 [初识]Vue3教程简介与Hello World编写