vite构建vue项目目录简介

news2024/12/28 4:12:14

文章目录

    • 1.项目目录介绍
    • 2.开发插件安装
    • 3.vue组件中的语法规范(SFC 语法规范)
    • 4.npm run dev命令执行过程

1.项目目录介绍

  • public 下面的不会被编译 可以存放静态资源
  • assets 下面可以存放可编译的静态资源
  • components 下面用来存放我们的组件
  • App.vue 是全局组件
  • main ts 全局的ts文件
  • vite-env.d.ts存放vite声明文件,由于typescript不认识.vue文件,此文件帮助做了一个声明
  • index.html 非常重要的入口文件 (webpack,rollup 他们的入口文件都是enrty input 是一个js文件 而Vite 的入口文件是一个html文件,他刚开始不会编译这些js文件 只有当你用到的时候 如script src=“xxxxx.js” 会发起一个请求被vite拦截这时候才会解析js文件)
  • tsconfig.json为ts配置文件
  • vite.config.ts为vite配置文件,vite基于esbuild编译,打包是基于rollup.js进行打包的

请添加图片描述

2.开发插件安装

在进行vue3开发时,在插件搜索框中输入volar,安装Vue Language Features (Volar)和TypeScript Vue Plugin (Volar)两个插件,如果之间vscode中进行过vue2项目的开发,可能会装过vetur这个插件,在进行vue3开发时建议将此插件进行禁用
在这里插入图片描述

3.vue组件中的语法规范(SFC 语法规范)

*.vue 件都由三种类型的顶层语法块所组成:<template>、<script>、<style>


<template>
每个 *.vue 文件最多可同时包含一个顶层 <template>块。

其中的内容会被提取出来并传递给 @vue/compiler-dom,预编译为 JavaScript 的渲染函数,并附属到导出的组件上作为其 render 选项。


<script>
每一个 *.vue 文件可以有多个 <script> 块 (不包括<script setup>)。

该脚本将作为 ES Module 来执行。

其默认导出的内容应该是 Vue 组件选项对象,它要么是一个普通的对象,要么是 defineComponent 的返回值。


<script setup>
每个 *.vue 文件最多只能有一个 <script setup> 块 (不包括常规的 <script>)

该脚本会被预处理并作为组件的 setup() 函数使用,也就是说它会在每个组件实例中执行。<script setup>的顶层绑定会自动暴露给模板。更多详情请查看 <script setup>文档。


<style>
一个 *.vue 文件可以包含多个 <style>标签。

<style>标签可以通过 scoped 或 module attribute (更多详情请查看 SFC 样式特性) 将样式封装在当前组件内。多个不同封装模式的 <style> 标签可以在同一个组件中混

在这里插入图片描述

4.npm run dev命令执行过程

在我们执行这个命令的时候会去找 package json 的scripts 然后执行对应的dev命令
在这里插入图片描述
但是我们直接执行vite命令会报错:
在这里插入图片描述
因为在我们的电脑上面并没有配置过相关命令 所以无法直接执行

其实在我们执行npm install 的时候(包含vite) 会在node_modules/.bin/ 创建好可执行文件

在这里插入图片描述

.bin 目录,这个目录不是任何一个 npm 包。目录下的文件,表示这是一个个软链接,打开文件可以看到文件顶部写着 #!/bin/sh ,表示这是一个脚本在我们执行npm run xxx npm 会通过软连接查找这个软连接存在于源码目录node_modules/vite

在这里插入图片描述
所以npm run xxx 的时候,就会到 node_modules/bin中找对应的映射文件,然后再找到相应的js文件来执行

1.查找规则是先从当前项目的node_modlue /bin去找,

2.找不到去全局的node_module/bin 去找

3.再找不到 去环境变量去找

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

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

相关文章

react基础Day01-React概述脚手架搭建JSX组件

React基础知识点 目标 能够说出React是什么能够说出React的特点能够掌握React的基本使用能够使用React脚手架 什么是React &#xff08;★★★&#xff09; React是一个用于构建用户界面的javaScript库&#xff0c;起源于facebook的内部项目&#xff0c;后续在13年开源了出…

Mysql入门技能树-时间日期函数(二)-练习篇

EXTRACT 关于 Extract 操作和其它日期时间函数的对应关系&#xff0c;下列说法正确的是&#xff1a; 1.extract(mirosecond from date) 相当于 ms(date) 2.extract(second from date) 相当于 second(date) 3.extract(minute from date) 相当于 minute(date) 4.extract(hour f…

IO流(二)

1.对象流-ObjectInputStream和ObjectOutputStream&#xff08;处理流包装流&#xff09;的基本原理 看一个需求&#xff1a; 1.将int num100这个int数据保存到文件中&#xff0c;注意不是100数字&#xff0c;而是int 100,并且&#xff0c;能够从文件中直接恢复int 100 2.将Dog …

Excel工具类实现——基于poi5.2.3

初衷仅是因为网上的Excel工具类不是太老旧的方法&#xff0c;就是不是很满足我想法&#xff0c;就想要自己搞一个&#xff0c;不过还不支持合并单元格等复杂的操作&#xff0c;后续看看能不能优化&#xff0c;有大神有更好的方法&#xff0c;可以公众号联系我&#xff0c;让我学…

基于jsp+mysql+Spring的SpringBoot美容院预约管理系统设计和实现

基于jspmysqlSpring的SpringBoot美容院预约管理系统设计和实现 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java毕设项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文…

编制万年历的历程

初入编程之道的学子大都试编过万年历。万年历有二种&#xff1a;一为只有西历的月历&#xff0c;另一为有农历对照的月历或日历。编写万年历程序可以练练手&#xff0c;加深对编程语言的理解。记得我初入此道是在1994年&#xff0c;我那时刚买了486电脑&#xff0c;也刚开始有视…

概率论基本概念

全概率公式 P(B)P(BA1)P(BA2)...P(BAn) P(B) P(B|A1)P(A1) P(B|A2)P(A2) ... P(B|An)P(An)P(BA1)P(BA2)...P(BAn) 事件A1&#xff0c;A2&#xff0c;…构成一个完备事件组且都有正概率 某一个事件概率 这个事件*其他完备事件划分联合概率之和 联合概率 联合概率指的…

线程安全问题(2)

锁的相关知识&#xff1a; 1)这就是类似于说我们ATM机上面有一把锁&#xff0c;同一时刻&#xff0c;如果说人们之间不相互认识&#xff0c;那么通过这把锁就进行限制了说就限制了说一次只能有一个人来进来取钱&#xff0c;我们通过这样的锁&#xff0c;就可以来进行避免上述这…

ESP8266 Arduino开发 搭建web服务器与客户端开发

一、wifi 相关配置 1.1 无线终端 wifi 模式 此模式中&#xff0c;esp8266 会连接到指定 wifi 进行工作。 #include <ESP8266WiFi.h> // 本程序使用ESP8266WiFi库const char* ssid "home"; // 连接WiFi名&#xff08;此处使用home为示例&…

位运算相关

1.与运算 &#xff08;点我&#xff09; 这个题的大概意思&#xff1a;给222个数nnn和xxx&#xff0c;其中满足n&(n1)&(n2)&(n3)...&mxn\&(n1)\&(n2)\&(n3)...\&mxn&(n1)&(n2)&(n3)...&mx,求最小的mmm&#xff0c;只要满足m&g…

【异常】java11提示: Cannot find any provider supporting RSA/ECB/PKCS1Padding的问题

一、背景 项目中需要对敏感字段进行加密&#xff0c;但是加密方法中涉及到比较复杂的加密算法&#xff0c;这些算法都需要一个Provider&#xff0c;主要是用于初始化算法的。 以下是遇到的具体问题 二、报错截图 java.security.NoSuchAlgorithmException: Cannot find any pr…

【软件测试】软件测试模型

1. V模型 需求分析—计划—设计—编码—测试 ● 概要设计&#xff1a;设计整体架构&#xff0c;框架 ● 详细设计&#xff1a;模块和模块之间的详细设计 ● 集成测试&#xff0c;单元测试&#xff1a;通常由开发人员进行 特点&#xff1a; 明确标注了测试的多类型明确标注了测…

Introduction to Multi-Armed Bandits——01 Scope and Motivation

Introduction to Multi-Armed Bandits——01 Scope and Motivation 参考资料 Slivkins A. Introduction to multi-armed bandits[J]. Foundations and Trends in Machine Learning, 2019, 12(1-2): 1-286.项目地址 https://github.com/yijunquan-afk/bandit-learning Bandit…

LeetCode622.设计循环队列

设计循环队列1.题目描述2.思路3.代码实现以及分析3.1 创建结构体3.2创建一个具体的循环队列3.3判断是否为空 和 判断是否为满4. 进队列 和 出队列5.取队首和队尾元素6.释放空间7.总结1.题目描述 设计循环队列 2.思路 环形队列的抽象图 我们这里使用数组模拟实现循环队列&…

TransactionTemplate自动注入,只看这一篇文章就够了

标准的springboot接入mybatis步骤 1.引入了对应的依赖包 2.应用的properties下增加相应配置 3.根据配置进行自动装配 一般我们会配置这些信息&#xff0c;主要包括三类 1.数据库的连接信息 2.指定的数据源类型 3.mybatis的配置信息 配完以后&#xff0c;当你启动SpringBoot的主…

你是真的“C”——详解C语言数组模块知识

详解C语言数组模块知识&#x1f60e;前言&#x1f64c;一维数组的创建和初始化&#x1f64c;1.1 数组的创建&#x1f49e;1.2 数组的初始化&#x1f49e;1.3 一维数组的使用&#x1f49e;1.4 一维数组在内存中的存储&#x1f49e;二维数组的创建和初始化&#x1f64c;1.1 二维数…

【Python百日进阶-数据分析】Day225 - plotly的Ohlc图go.Ohlc()

文章目录一、语法二、参数三、返回值四、实例4.1 简单的OHLC图4.2 隐藏滑块的OHLC图4.3 添加自定义文本和注释4.4 自定义OHLC颜色4.5 带日期时间对象的简单的OHLC图4.6 自定义悬浮文本4.7 Dash中的应用一、语法 ohlc&#xff08;Open-High-Low-Close 的缩写&#xff09;是一种…

【C++逆向】虚表(Virtual table)逆向 | 安卓so虚函数逆向

什么是多态 定义一个虚基类ISpeaker class ISpeaker{ protected:size_t b; public:ISpeaker( size_t _v ): b(_v) {}virtual void speak() 0; };有两个子类&#xff0c;都实现了虚函数speak()&#xff1a; class Dog : public ISpeaker { public:Dog(): ISpeaker(0){}//vir…

1581_AURIX_TC275_SMU故障处理梳理

全部学习汇总&#xff1a; GreyZhang/g_TC275: happy hacking for TC275! (github.com) 前面为了缓解自己的学习压力&#xff0c;一次学习笔记大概也就是看10页文档整理一下。这一次其实是看了几十页&#xff0c;但是里面过掉了一些信息&#xff0c;而且这部分内容不是很好拆分…

hive在IDEA中debug

一、hive在IDEA中debug 安装hadoop环境&#xff08;1和2替换顺序也可以&#xff09; 注&#xff1a;hadoop环境不需要从源码编译 https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html 按照官网教程编译源码 https://cwiki.apach…