首页 > 其他分享 >vue3快速上手和基本特性

vue3快速上手和基本特性

时间:2024-09-10 19:54:00浏览次数:15  
标签:vue createApp app 绑定 vue3 特性 上手 数据 属性

1)vue使用方式

1)cdn方式

        该方式无需使用包管理工具,只要用script标签引入js文件即可,可以快速使用vue

<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>

2)创建vue项目

        创建vue项目时需要nodejs环境,安装好nodejs后先为nodejs换一个国内镜像源以提升下载速度。

 npm config set registry https://registry.npmmirror.com

        接下来就可以创建项目了,首先移动到你要创建项目的目录下,执行如下命令

npm create vue@latest

        之后跟着提示就可以创建一个vue项目了,不过启动项目还需要做如下操作:

首先移动到项目目录下

cd <your-project-name>

获取所有依赖

npm install

运行项目

npm run dev

2)vue的特性

1)组件化

        创建好vue项目后打开index.html

可以发现这个页面引入了一个main.js,打开该文件后发现其引入了三个文件

其中打开app.vue发现 

        共引入了三个,RouterLink, RouterView, HelloWorld,且均在代码中出现。还能发现You did it!,修改为其他值后发现主页的数据也跟着变动了,可以断定这是主页的左半部分。将RouterView删除后发现页面少了一半,可以断定这是主页的右半部分。

        打开HelloWorld所在的文件

        可以发现msg正式上文中Helloword标签中的属性,且后三个红框的内容都是页面上存在的文字,此时不妨大胆猜测一下:我们将这段代码作为一个组件,命名为helloword,将在使用helloword时传入一个msg的属性得到显示效果,这个显示效果可以写在页面的任何位置。

        为了验证我们的猜想,我们将<RouterView />也换成<HelloWorld msg="You did it!" />

        至此我们发现了vue是组件化的,可以很方便的复用代码。它允许你将UI拆分成可复用的独立部分,并可以嵌套组合使用。每个Vue组件都包含自己的模板、逻辑和样式,vue项目正是由这一个个组件构成的

2)数据绑定

        数据绑定是vue的一个重要特性,即数据到视图的双向绑定。当数据发生变化时,视图会自动更新;当视图中的表单元素被修改时,数据也会自动更新。省去了每次都要重新获取数据的步骤。下文将会详细讲解数据绑定的使用方法

3)基本语法

1)挂载

        首先提取vue包

const {createApp} = Vue

        然后调用createApp,并将这个函数挂载到#app这个元素上

createApp().mount("#app")

       这样就将createApp挂载到了#app上,进行下一步操作

2)数据传递

        为createApp()函数传入参数,参数是一个对象,用配置对象属性的方式配置该对象的内容,内有data(){}用于返回想要的数据,返回的数据是对象。还可以放一些方法等

<div id="app">我是{{person.name}},{{message}}</div>
<script>
        const {createApp} = Vue
        createApp({
            data(){
                return{
                    message:"v我50,让你当大将军",
                    person:{
                        name:"秦始皇",
                        age:11,
                        gender:1
                    },
                    number1:10,
                    number2:5
                }
            },
            methods:{
                m1(num){
                    this.number1 = num
                }
            }
        }).mount("#app")
</script>

3)页面接收数据

        1)插值表达式

        {{}}为差值表达式,可以放在被挂载元素的任何位置,内部放变量名。

<div id="app">我是{{person.name}},{{message}}</div>

        这段代码的显示效果是我是秦始皇,v我50封你做大将军。

        差值表达式的功能非常强大,它可以方便的对数据进行各种操作,如下

{{person. Gender==1?"男":"女"}}<br>
<label for="">{{number1}}/{{number2}}=</label><label for="">{{number1/number2}}</label><br>
<label for="">欢迎语=</label><label for="">{{message.toLowerCase()}}</label><br>

2)数据绑定

        在标签内不能使用插值表达式,但是可以使用数据绑定,使用方式是将v-bind添加到属性前面。v-bind可省略,只留一个冒号。

<input type="text" v-bind:value="message">
<input type="text" :placeholder="message">

3)双向数据绑定

        使用v-model:属性,默认绑定value,当value属性发生变化时script中的值随之改变。

<input type="text" v-model:="message">

4)事件绑定

        绑定事件现在的写法有所变化,使用@或v_on:事件名="函数名(参数列表)"如果无参数则无需括号。

<button type="button" @click="m1">按钮</button>

        如果点击这个按钮则带有v-model属性的标签值会自动更新

标签:vue,createApp,app,绑定,vue3,特性,上手,数据,属性
From: https://blog.csdn.net/mecende/article/details/142067107

相关文章

  • 【卷起来】VUE3.0教程-05-侦听器
    =========各位看官,在开始学习之前,请帮我点个关注和赞吧========== ......
  • 工作日志:从零搭建vue3+ts+sass项目(3)
    折腾了两天后,发现elementPlus的代码都是ts的,本来不想现在用ts,因为非常不熟悉,但长痛不如短痛,重开项目!直接vue3+vite+ts+sass!让暴风雨来得更猛烈一下吧!我差那几个bug吗?1、执行命令如下:npmcreatevite@latestnpminstallnpminstallsass-Dnpmivue-router2、在src下......
  • 【昌哥IT课堂】MySQL8.0新特性之不可见主键
     一、概述作为MySQLDBA,相信大家都经历过在复制模式下,如果没有主键,遇到loaddata,大事务,ddl等有大量表数据行扫描的行为时,会带来严重的主从延迟,给数据库稳定性和数据一致性带来隐患。MySQL8.0.30新版本为我们提供了一个新特性-(GeneratedInvisiblePrimaryKeys)简称GI......
  • Vue3项目开发——新闻发布管理系统(六)
    文章目录八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染4、退出功能实现①注册点击事件②添加退出功能③数据清理5、代码下载......
  • vue3 什么是Composition API 我为什么要使用它?
    CompositionAPI(组合式API)是Vue3中引入的一组全新的API,旨在提供一种更加灵活和可组合的方式来组织和复用组件逻辑。这一改变是Vue.js向函数式编程和更现代的开发方式迈出的重要一步。以下是CompositionAPI的详细解析:一、基本概念定义:CompositionAPI是一组允许开发者以函......
  • vue3常见的bug 修复bug
    Vue3作为Vue.js的最新版本,在性能、开发体验以及代码可维护性等方面带来了显著的提升。然而,就像任何软件框架一样,Vue3在使用过程中也可能遇到一些典型的bug或问题。以下是一些可能遇到的典型问题:响应式系统相关的问题:状态或数据更新不及时:由于Vue3使用Proxy来实......
  • VUE框架Vue3使用自定义的ref实现延迟加载效果的实现解决setTimeout过多导致的抖动问题
    import{customRef}from"vue";exportdefaultfunction(){//自己定义一个reffunctionuseDebouncedRef(value){//自定义的ref函数体需要符合ref规范//通过调用customRef来获取一个ref实例//调用customRef必须要给出一个回调函数作为形......
  • Vue3:具名插槽
    有时在一个组件中包含多个插槽出口是很有用的。举例来说,在一个 <BaseLayout> 组件中,有如下模板:<divclass="container"><header><!--标题内容放这里--></header><main><!--主要内容放这里--></main><footer><!--底部内容放......
  • 在vue3中手写按需加载图片
    在我们的网页中.假如使用了大量的图片,每个图片都是需要去访问加载的这就影响了我们的访问速度,手写一个按需加载组件,就可以解决这个问题让图片处于页面视图的时候再加载,减轻网页访问负担利用vue3官网给出的钩子我们常用的就是onMountent如官网所示为了及时监测,这里......
  • vue3生命周期(钩子函数)
    在Vue3中,生命周期钩子被重命名并分为了不同的阶段,以更好地描述它们的用途。这些新的生命周期钩子包括:setup():这是一个新的入口点,在beforeCreate和created之前调用。onBeforeMount/onMounted:组件挂载前/后的生命周期钩子。onBeforeUpdate/onUpdated:组件更新前/后的生命......