【Vue】前端框架 Vue3框架 使用总结(一) Vue框架的基础使用
CrazyPanda发表于:2023-12-05 20:39:36浏览:806次
目录
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、项目结构
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的风格开发更有利于大型项目的维护
二、VueRouter的基础使用
官方文档:介绍 | Vue Router
1、安装
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中导入依赖,并配置使用
(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、调优-路由懒加载
三、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中添加依赖并配置
使用
2、更改store状态,同步操作
3、store中的计算属性
4、redux里的异步操作Action
5、模块化管理
使用时最好开启命名空间
四、网络请求
文章知识点与官方知识档案匹配,可进一步学习相关知识
Vue入门技能树vue3基础(JS)Vue3的生命周期函数38969 人正在系统学习中
猜你喜欢
- 【Vue】vue是什么模式的前端框架
- vue 中的 mvvm 架构将应用程序分为 model、view 和 viewmodel:model:包含数据和业务逻辑,独立于视图。view:显示 model 中的数据,使用模板语法进行数据绑定。viewmodel:model 和 view 之间的桥梁,包含与 view 交互的数据和方法,并更新 view。mvvm 在 vue 中的优势包括响应式数据绑定、代码可重用性、提高生产力、易于调试。Vue:MVVM 架构什么是 MVVM?MVVM(Model-View-ViewModel)是一种软件设
- 【VUE】Vue3 实现文件预览 Word Excel pdf 图片 视频等格式 大全!!!!
- 先上效果图 插件安装先说 word 文件是docx-preview插件 excel文件是用 xlsx 插件 介绍后端返回的数据因为在拦截器处 做了对数据的处理 最后你调接口拿到的数据是 一个对象 里面包含:url : blob对象转换的用于访问Blob数据的临时链接。这个链接可以被用于在网页中展示二进制数据,比如显示图像或者播放音视频文件blobs:&
- 【VUE】Vue3+Vite+TypeScript常用项目模块详解
- 目录1.Vue3+Vite+TypeScript 概述1.1 vue3 1.1.1 Vue3 概述1.1.2 vue3的现状与发展趋势1.2 Vite1.2.1 现实问题1.2 搭建vite项目1.3 TypeScript1.3.1 TypeScript 定义1.3.2 TypeScript 基本数据类型 1.3.3 TypeScript语法简单介绍2. 项目配置简单概述2.1 eslint 校验代码工具配置2.1.1 eslint定义2.1
- 【Vue】深入剖析:Vue核心之虚拟DOM
- 转载:https://www.cnblogs.com/caihongmin/p/17510878.html前言使用 Vue 做项目也有两年时间了,对 Vue 的 api也用的比较得心应手了,虽然对 Vue 的一些实现原理也耳有所闻,例如 虚拟DOM、flow、数据驱动、路由原理等等,但是自己并没有特意去探究这些原理的基础以及 Vue 源码是如何利用这些原理进行框架实现的,所以利用空闲时间,进行 Vue 框架相关技术原理和 Vue 框架的具体实现的整理。如果你对 Vue 的实现原理很感兴趣,那么就
- 【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指令将输
- 【Vue】vue怎么转换时间格式
- 在 Vue.js 中,使用过滤器是一种转换时间格式的便捷方式。以下是如何完成此操作:使用 moment.js 库:安装 moment.js 库:npm install --save moment在 Vue 组件中导入 moment.js:import moment from 'moment'使用 moment.js 的 format 方法转换时间格式:const formattedTime = moment(timestamp).format(&#3
- 【Vue】Andt Pro Vue的使用(六) —— 描述列表a-descriptions设置label和content的样式
- 1、 a-descriptions设置label和content的样式在react组件中,可以直接设置labelStyle和contentStyle,来设置label和content的样式,但是在vue2的组件中,官方并没有给出响应的设置方法如下是我的订单详情页面label的宽度是自适应的,想要设置为固定的宽度,网上找了好多方法,都不生效直到遇到下面的方法https://blog.csdn.net/fifty_one/article/details/120219194 要使用/deep,
- 【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
栏目分类全部>