构建Vue3项目的几种方式,如何简化setup写法

news2024/11/26 4:20:49
1、说明

        在vue2版本中,我们使用vue-cli脚手架进行构建,而切换到Vue3之后,依然可以使用vue-cli脚手架进行构建,但是官方推荐使用vite工具进行构建,下面将介绍几种方式构建vue3项目。

2、使用vue-cli脚手架构建Vue3项目
# 安装vue-cli脚手架
npm install -g @vue/cli@5.0.8   # 可以指定脚手架的版本号
# 创建项目
vue create 项目名  # 在此步以后,需要选择vue3版本,然后等待进行构建
3、使用vite进行创建vue3项目
3.1、第一种
# 创建项目
npm create vue@latest
# 进入目录
cd 项目名
# 安装依赖
npm install
# 运行
npm run dev

执行上述命令之后,一次按照提示进行选择构建。

3.2、第二种
# 使用vite创建Vue3项目
npm init vite-app 项目名
# 进入目录
cd 项目名
# 安装依赖
npm install
# 运行
npm run dev
 4、简化setup
4.1、原始写法
<script lang='ts'>
export default{
    name:'Test',
    setup(){
        let a = 'aaa'
        function getAA(){
            console.log('=========')
        }
        return {a, getAA} // 需要将声明的交出去,模板才能使用
    }
}
</script>
4.2、使用语法糖

需要写两个script标签,一个指明组件名,一个定义数据操作。

<script lang='ts'>
export default{
    name:'Test',
}
</script>
<script setup lang='ts'>
    let a = 'aaa'
    function getAA(){
        console.log('=========')
    }
}
</script>
4.3、使用插件,简化setup语法糖操作

1、安装插件

npm i vite-plugin-vue-setup-extend

2、在vite.config.ts中引入(注释的地方为新添加的)

import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
// 引入插件
import VueSetupExtend from 'vite-plugin-vue-setup-extend'

export default defineConfig({
  plugins: [
    vue(),
    vueJsx(),
    VueSetupExtend() // 使用插件
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  }
})

3、使用插件后setup最终写法

<script setup lang='ts' name='Test'>
    let a = 'aaa'
    function getAA(){
        console.log('=========')
    }
</script>
4、总结

        本文介绍三种构建vue3项目的方式,同时介绍vue3中一个新的特性,组件式api中setup的简化写法,帮助大家从基础入门vue3的学习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1797177.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL -- 连接查询

MySQL使用连接查询&#xff08;JOIN&#xff09;是为了从多个相关表中获取数据。连接查询是一种强大且常用的操作&#xff0c;可以根据某些条件将两张或多张表中的数据组合在一起&#xff0c;返回一个联合结果集。 1.为什么使用连接查询 数据规范化&#xff1a; 数据库设计时通…

针对多智能体协作框架的元编程——METAGPT

M ETA GPT: M ETA P ROGRAMMING FOR M ULTI -A GENT COLLABORATIVE F RAMEWORK 1.概述 现有的多智能体系统主要面临以下问题&#xff1a; 复杂性处理不足&#xff1a;传统的多智能体系统主要关注简单任务&#xff0c;对于复杂任务的处理能力有限&#xff0c;缺乏深入探索和…

WeTrade亮相Traders Fair展会菲律宾站

2024年5月25日&#xff0c;菲律宾交易博览会在马尼拉的Edsa香格里拉酒店圆满落幕。 WeTrade作为本次交易博览会的重要战略合作伙伴、参展商和赞助商&#xff0c;吸引了全球各界人士的广泛关注。 现场&#xff0c;我们的菲律宾团队与客户进行了亲密的面对面交流&#xff0c;并…

如何理解与学习数学分析——第二部分——数学分析中的基本概念——第5章——序列

第2 部分&#xff1a;数学分析中的基本概念 (Concepts in Analysis) 5. 序列(Sequences) 本章介绍了序列属性&#xff0c;例如单调性、有界性和收敛性&#xff0c;使用图表和示例来解释这些属性&#xff0c;并演示如何在各种证明中使用它们的定义。讨论了趋于无穷大的序列出…

计算机网络学习实践:DHCP跨网段动态分配IP

计算机网络学习实践&#xff1a;DHCP跨网段动态分配IP 1.实验准备 实验环境&#xff1a;思科的模拟器 实验设备&#xff1a; 1个服务器&#xff0c;2个二层交换机&#xff08;不是三层的&#xff09;&#xff0c;4个PC机&#xff0c;1个路由器 三个网段 192.168.1.0 255.…

大语言模型 (LLM) 窥探未来

随着2023年的岁月渐渐走向尾声&#xff0c;我们站在人工智能的前沿&#xff0c;回望大语言模型&#xff08;Large Language Models, LLM&#xff09;所走过的道路&#xff0c;同时也不禁展望未来。从初步尝试到成为人工智能领域的万千宠爱&#xff0c;一种又一种的技术突破&…

STM32(九):USART串口通信 (标准库函数)

前言 上一篇文章已经介绍了如何用STM32单片机中独立看门狗来实现检测按键点灯的程序。这篇文章我们来介绍一下如何用STM32单片机中USART通信协议来串口通信&#xff0c;并向XCOM发送信息。 一、实验原理 1.通信的介绍 首先&#xff0c;我们先介绍一下通信&#xff0c;何为通…

WordPress--批量关闭 Pingback 和 Trackback

原文网址&#xff1a;WordPress--批量关闭 Pingback 和 Trackback_IT利刃出鞘的博客-CSDN博客 简介 本文介绍WordPress如何批量关闭 Pingback 和 Trackback。 新发布文章默认关闭 在设置> 讨论中关闭如下两项&#xff1a; 关闭已经发布的文章 UPDATE wp_posts SET ping…

分析示例 | Simufact焊接工艺仿真变形精确预测汽车结构

导语 焊接是汽车制造过程中一个关键环节&#xff0c;白车身、发动机、底盘和变速箱等都离不开焊接工艺的应用&#xff0c;主要涉及气保焊、电阻点焊、激光焊、电子束焊等多种焊接工艺。由于汽车车型众多、成形结构复杂、汽车制造质量、效率、成本等方面的综合要求。如何高效、…

OpenGL系列(五)纹理贴图

概述 OpenGL纹理是一种在三维图形中应用纹理映射的技术。纹理是一张图像&#xff0c;可以应用到三维模型的表面上&#xff0c;从而使得模型看起来更加真实和具有细节。通过纹理映射&#xff0c;可以将图像的像素值与三维模型的顶点进行匹配&#xff0c;从而为模型的表面增加细节…

6ull--系统移植(U-Boot、内核kernel、根文件系统rootfs)

1、摘要 版本型号&#xff1a;ubuntu18.04 ARM板型号&#xff1a;imx6ull-emmc-8g核心板 要在Linux内核中进行驱动的编写&#xff0c;因此要找到kernel源码&#xff0c;适配内核kernel到板子上。 本文主要记录对imx6ull进行系统移植 U-Boot是官方自带的&#xff0c;没…

X86+FPGA方案:铁路货车装载视频智能监视系统应用

如果说高铁技术的问世开启了铁路运输的“速度革命”&#xff0c;那么人工智能技术的应用则将造就铁路出行的“智能革命”。铁路是国民经济的大动脉&#xff0c;铁路运输安全不仅影响铁路本身的效率和效益&#xff0c;更直接影响了整个社会的生产生活和稳定和谐。铁路货物运输是…

【笔记】1/4被动悬架垂向动力学仿真+频域特性分析

1/4被动悬架 代码&#xff1a; %书第156页、159页 clc clear close all %% 一.悬架参数 ms320; mw50; Ks22000; Cs1500; Kw195000; f00.07; %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 二.垂向振动动力学仿真 %% 二.1.状态方程 A [0 1 0 -1;.…

LlamaIndex三 配置

前言 在上篇LlamIndex二 RAG应用开发 - 掘金 (juejin.cn)中&#xff0c;我们学习到LlamaIndex对RAG的全面支持。这篇文章&#xff0c;我们就来细化这个过程&#xff0c;尝试各种配置选项&#xff0c;满足不同场景需求。学习过后&#xff0c;大家再开发RAG应用&#xff0c;会更…

数据库优化sql的方案

一&#xff1a; 插入数据的优化 1.insert 如果我们需要一次性往数据库表中插入多条记录&#xff0c;可以从以下三个方面进行优化 优化方案一 批量插入数据 Insert into tb_test values(1,Tom),(2,Cat),(3,Jerry); 优化方案二 start transaction; insert into tb_test values(…

qwen2 vllm推理部署;openai接口调用

参考: https://qwenlm.github.io/zh/blog/qwen2/ 下载 https://huggingface.co/Qwen 下载的Qwen2-7B-Instruct使用: export HF_ENDPOINT=https://hf-mirror.comhuggingface-cli download --resume-download --local-dir-use-symlinks False Qwen/Qwen2-7B-Instruct

webpack 优化构建速度的插件

1.HardSourceWebpackPlugin本地缓存 HardSourceWebpackPlugin这个插件比DLL动态链接库更优秀 HardSourceWebpackPlugin是webpack的插件&#xff0c;为模块提供中间缓存步骤。为了查看结果&#xff0c;您需要使用此插件运行webpack两次&#xff1a;第一次构建将花费正常的时间…

mysql中事务的简介

大家好。我们在日常开发过程中肯定都或多或少的用到过事务&#xff0c;而且在面试时&#xff0c;数据库的事务也是必问内容之一。今天我们就来说说mysql的事务。 为了方便我们下面内容的讲解&#xff0c;我们也先建立一个讲事务必用的表–account表&#xff0c;并在表中插入两…

zoomeye api报错 request invalid, validate usage and try again

项目场景&#xff1a; 调用zoomeye的api接口进行数据拿取 问题描述 之前接口一直通着今天突然报错&#xff0c;以下为源代码 pip install zoomeye from zoomeye.sdk import ZoomEye zm ZoomEye(api_key"34A8B452-D874-C63E0-8471-F3D4f89766f") zm.dork_search(a…

Python 将CSV文件转为PDF文件

CSV文件通常用于存储大量的数据&#xff0c;而PDF文件则是一种通用的文档格式&#xff0c;便于与他人共享和打印。将CSV文件转换成PDF文件可以帮助我们更好地管理和展示数据。本文将介绍如何通过Python编程将CSV文件导出为PDF文件。 Python Excel库安装及介绍 在 Python 中&am…