您的当前位置:首页>全部文章>文章详情

【Vue】前端框架 Vue3框架 使用总结(一) Vue框架的基础使用

CrazyPanda发表于:2023-12-05 20:39:36浏览:806次TAG:

目录

一、Vue3框架基础

1、创建项目

2、项目结构

3、Vue基础语法

4、组件之间通信

5、组合式api

二、VueRouter的基础使用

1、安装

2、使用案例

3、完整案例步骤

4、调优-路由懒加载

三、Vuex数据管理

1、实现案例

 2、更改store状态,同步操作

3、store中的计算属性

4、redux里的异步操作Action

5、模块化管理

四、网络请求



Vue3官方文档:Vue.js - 渐进式 JavaScript 框架 | Vue.js

基础部分见官方文档

一、Vue3框架基础

1、创建项目

安装yarn

npm install -g yarn//检验是否安装成功yarn -v

yarn配置taobao镜像源

yarn config set registry https://registry.npm.taobao.org

安装vue-cli脚手架

yarn global add @vue/cli// 检查vue是否被安装vue -V

创建vue3项目,注意这里项目名不能有大写字母

vue create my-project(你的项目名)

启动项目

yarn run serve

2、项目结构

b5a77db0cdbd436188c23d52d8838748.png

b5a77db0cdbd436188c23d52d8838748.png

3、Vue基础语法

指令名称指令作用备注
v-html显示与解析HTML代码等效与JS的innerHTML,<p v-html="'<h1>hello</h1>'"</p>标签h1不会直接显示而是编程h1标签
v-text原封不动的展示等效与JS的innerText
v-for遍历与循环功能遍历数字,字符串,对象,数组
v-bind绑定属性简单形式 :属性名=“值”
v-model双向绑定,可配合修饰符使用只支持input,select,textarea
v-show显示与隐藏隐藏只是样式:style=“display=none”
v-if判断v-if/v-else-if/v-else是一组
v-on绑定事件简写形式 @事件名=方法名()
v-once数据只渲染一次,渲染后数据不会发生变化<p v-once>{{msg}}</p>即使msg改变也不会再渲染

4、组件之间通信

props父组件向子组件传值,见:Props | Vue.js

事件传值,子组件向父组件传值,见:组件事件 | Vue.js

跨级通信,见:依赖注入 | Vue.js

5、组合式api

使用组合式api的风格开发更有利于大型项目的维护

组合式 API:setup() | Vue.js

二、VueRouter的基础使用

官方文档:介绍 | Vue Router

1、安装

安装 | Vue Router

2、使用案例

基本使用案例官方:入门 | Vue Router

// 1. 定义路由组件.
// 也可以从其他文件导入
const Home = { template: '<div>Home</div>' }
const About = { template: '<div>About</div>' }
 
// 2. 定义一些路由
// 每个路由都需要映射到一个组件。
// 我们后面再讨论嵌套路由。
const routes = [
  { path: '/', component: Home },
  { path: '/about', component: About },
]
 
// 3. 创建路由实例并传递 `routes` 配置
// 你可以在这里输入更多的配置,但我们在这里
// 暂时保持简单
const router = VueRouter.createRouter({
  // 4. 内部提供了 history 模式的实现。为了简单起见,我们在这里使用 hash 模式。
  history: VueRouter.createWebHashHistory(),
  routes, // `routes: routes` 的缩写
})
 
// 5. 创建并挂载根实例
const app = Vue.createApp({})
//确保 _use_ 路由实例使
//整个应用支持路由。
app.use(router)
 
app.mount('#app')
 
// 现在,应用已经启动了!

3、完整案例步骤

(1)创建src/router/index.js文件用于存放路由表

// 1. 定义路由组件.
// 也可以从其他文件导入
import HomePage from "../views/HomePage.vue"
import AboutPage from "../views/AboutPage.vue"
 
import { createRouter,createWebHistory } from "vue-router"
 
 
// 2. 定义一些路由
// 每个路由都需要映射到一个组件。
// 我们后面再讨论嵌套路由。
const routes = [
    { path: '/', component: HomePage },
    { path: '/about', component: AboutPage },
]
 
// 3. 创建路由实例并传递 `routes` 配置
// 你可以在这里输入更多的配置,但我们在这里
// 暂时保持简单
const router = createRouter({
    // 4. 内部提供了 history 模式的实现。为了简单起见,我们在这里使用 hash 模式。
    history: createWebHistory(),
    routes, // `routes: routes` 的缩写
})
 
export default router

(2)main.js中导入依赖,并配置使用

b5a77db0cdbd436188c23d52d8838748.png

(3)配置跳转使用

<template>
  <div id="app">
    <h1>Hello App!</h1>
    <p>
      <!--使用 router-link 组件进行导航 -->
      <!--通过传递 `to` 来指定链接 -->
      <!--`<router-link>` 将呈现一个带有正确 `href` 属性的 `<a>` 标签-->
      <router-link to="/">Go to Home</router-link>
      <router-link to="/about">Go to About</router-link>
    </p>
    <!-- 路由出口 -->
    <!-- 路由匹配到的组件将渲染在这里 -->
    <router-view></router-view>
  </div>
</template>

实现路由跳转,更多路由熟悉参考官网文档。

4、调优-路由懒加载

路由懒加载 | Vue Router

三、Vuex数据管理

官网案例: 开始 | Vuex

安装依赖:安装 | Vuex

1、实现案例

(1)新建src/store/index.js文件

import { createStore } from 'vuex'
 
// 创建一个新的 store 实例
const store = createStore({
    state () {
        return {
            count: 0
        }
    },
    mutations: {
        increment (state) {
            state.count++
        }
    }
})
 
export default store

(2)main.js中添加依赖并配置

b5a77db0cdbd436188c23d52d8838748.png

使用

b5a77db0cdbd436188c23d52d8838748.png

 2、更改store状态,同步操作

参考:Mutation | Vuex

3、store中的计算属性

参考:Getter | Vuex

4、redux里的异步操作Action

参考:Action | Vuex

5、模块化管理

使用时最好开启命名空间

参考:Module | Vuex

四、网络请求

见我的博客:前端框架 网络请求 Fetch Axios_Dragon Wu的博客-CSDN博客

文章知识点与官方知识档案匹配,可进一步学习相关知识

猜你喜欢

【Vue】vue是什么模式的前端框架
vue 中的 mvvm 架构将应用程序分为 model、view 和 viewmodel:model:包含数据和业务逻辑,独立于视图。view:显示 model 中的数据,使用模板语法进行数据绑定。viewmodel:model 和 view 之间的桥梁,包含与 view 交互的数据和方法,并更新 view。mvvm 在 vue 中的优势包括响应式数据绑定、代码可重用性、提高生产力、易于调试。Vue:MVVM 架构什么是 MVVM?MVVM(Model-View-ViewModel)是一种软件设
发表于:2024-04-28 浏览:306 TAG:
【VUE】Vue3 实现文件预览 Word Excel pdf 图片 视频等格式 大全!!!!
先上效果图&nbsp;&nbsp;插件安装先说 word 文件是docx-preview插件&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; excel文件是用&nbsp;xlsx 插件&nbsp; &nbsp;&nbsp;介绍后端返回的数据因为在拦截器处 做了对数据的处理 最后你调接口拿到的数据是 一个对象 里面包含:url :&nbsp;blob对象转换的用于访问Blob数据的临时链接。这个链接可以被用于在网页中展示二进制数据,比如显示图像或者播放音视频文件blobs:&amp;
发表于:2023-12-28 浏览:313 TAG:
【VUE】Vue3+Vite+TypeScript常用项目模块详解
&nbsp;目录1.Vue3+Vite+TypeScript 概述1.1 vue3&nbsp;1.1.1 Vue3&nbsp; 概述1.1.2&nbsp;vue3的现状与发展趋势1.2 Vite1.2.1 现实问题1.2 搭建vite项目1.3 TypeScript1.3.1 TypeScript 定义1.3.2 TypeScript 基本数据类型&nbsp;1.3.3 TypeScript语法简单介绍2. 项目配置简单概述2.1 eslint 校验代码工具配置2.1.1 eslint定义2.1
发表于:2024-02-21 浏览:452 TAG:
【Vue】深入剖析:Vue核心之虚拟DOM
转载:https://www.cnblogs.com/caihongmin/p/17510878.html前言使用 Vue 做项目也有两年时间了,对 Vue 的 api也用的比较得心应手了,虽然对 Vue 的一些实现原理也耳有所闻,例如 虚拟DOM、flow、数据驱动、路由原理等等,但是自己并没有特意去探究这些原理的基础以及 Vue 源码是如何利用这些原理进行框架实现的,所以利用空闲时间,进行 Vue 框架相关技术原理和 Vue 框架的具体实现的整理。如果你对 Vue 的实现原理很感兴趣,那么就
发表于:2024-05-25 浏览:289 TAG:
【Vue】Antd Pro Vue的使用(十) —— a-form表单赋值
在Ant Design Pro Vue中,为表单赋值通常涉及到两个方面:一是使用v-model进行双向绑定,二是直接通过this.form.setFieldsValue()方法设置表单字段的值。以下是一个简单的例子,展示如何为Ant Design Pro Vue中的表单赋值:首先,确保你已经在组件中引入了a-form-model和相关的表单字段组件比如a-form-model-item和a-input。在data函数中定义一个form对象,它包含了你想要绑定的表单字段。使用v-model指令将输
发表于:2024-05-10 浏览:308 TAG:
【Vue】vue怎么转换时间格式
在 Vue.js 中,使用过滤器是一种转换时间格式的便捷方式。以下是如何完成此操作:使用 moment.js 库:安装 moment.js 库:npm install --save moment在 Vue 组件中导入 moment.js:import moment from &#39;moment&#39;使用 moment.js 的 format 方法转换时间格式:const&nbsp;formattedTime&nbsp;=&nbsp;moment(timestamp).format(&amp;#3
发表于:2024-05-19 浏览:285 TAG:
【Vue】Andt Pro Vue的使用(六) —— 描述列表a-descriptions设置label和content的样式
1、&nbsp;a-descriptions设置label和content的样式在react组件中,可以直接设置labelStyle和contentStyle,来设置label和content的样式,但是在vue2的组件中,官方并没有给出响应的设置方法如下是我的订单详情页面label的宽度是自适应的,想要设置为固定的宽度,网上找了好多方法,都不生效直到遇到下面的方法https://blog.csdn.net/fifty_one/article/details/120219194 要使用/deep,
发表于:2024-05-09 浏览:390 TAG:
【Vue】vue2vue3项目使用antd
前言项目研发需要,已经用了两年的ant design pro(react),因为会的人比较少,更多的人在使用vue,所以新项目决定使用antd vue来开发,好在比较熟悉了ant design组件的使用,也算是有一些基础。ant design 官网https://ant.design/index-cnantd vue 官网https://www.antdv.com/components/overview-cn 当前版本V4.1.2vue2项目-引入antd参考:https://www.antdv
发表于:2024-04-19 浏览:338 TAG:
【Vue】Antd Pro Vue的使用(八) —— 表单组件的常用配置
1、清除配置allow-clear在ant design react组件中,表单组件默认都有清除按钮(输入框右侧的小黑叉号),在vue组件中需要自己配置,即给组件加上allow-clear属性并且所有组件都支持这个属性,a-input、a-select、a-textarea、a-date-picker等都支持&lt;a-form-item&nbsp;label=&quot;用户名&quot;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&lt;a-input&nbsp; &nbsp;
发表于:2024-05-10 浏览:285 TAG:
【Vue】Vue中的组件生命周期以及应用场景介绍
vue是一款流行的javascript框架,它以其简化开发过程和高度可扩展性而闻名。vue的核心理念之一就是组件化,使得我们可以将应用程序拆解成一系列独立、可复用的组件。每个组件都有一个生命周期,它定义了组件被创建、被使用、被销毁的各个阶段。这个生命周期可以帮助我们更好地理解组件的工作原理,并在应用程序中使用不同的生命周期钩子完成特定的任务。在本文中,我们将详细介绍vue中的组件生命周期,以及如何应用生命周期钩子函数。组件生命周期在Vue中,组件有三个周期阶段:初始化阶段、运行阶段和销毁阶段。每
发表于:2024-04-29 浏览:316 TAG: