Vue3 新项目默认工程文件理解

Vue3 新项目默认工程文件理解

文章目录

  • Vue3 新项目默认工程文件理解
    • 0、工程文件结构图
    • 1、main.ts
    • 2、index.html
      • 源文件
      • 编译后
    • 3、App.vue
    • 4、`.d.ts` 文件作用

0、工程文件结构图

image-20240326213012795

1、main.ts

// 引入 createApp 函数
import { createApp } from 'vue'
// 引入 style.css 文件,编译后会自动插入到 index.html 文件中
import './style.css'
// 引入 App 组件,这里的 App.vue 是一个单文件组件,是应用的根组件
import App from './App.vue'

// 将跟组件传入 createApp 函数,通过 createApp 函数创建一个 Vue 应用实例
const app = createApp(App);
// 将 Vue 应用实例挂载到 id 为 app 的 DOM 元素上
// 这里的挂载目标是 src/index.html 文件中的 <div id="app"></div>
// src/index.html 引入了 /src/main.ts 文件,因此此文件会在 index.html 中执行
app.mount('#app');

2、index.html

源文件

vite 创建项目生成的原文件,未做任何更改!

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vite + Vue + TS</title>
  </head>
  <body>
    <div id="app"></div>
    <script type="module" src="/src/main.ts"></script>
  </body>
</html>

编译后

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vite + Vue + TS</title>
    <script type="module" crossorigin src="/assets/index-DDUDQF2p.js"></script>
    <link rel="stylesheet" crossorigin href="/assets/index-C_1Y39CH.css">
  </head>
  <body>
    <div id="app"></div>
  </body>
</html>

3、App.vue

简化!

<script setup lang="ts">
</script>

<template>
  <h1>Hello Woeld!</h1>
</template>

<style scoped>
</style>

4、.d.ts 文件作用

在 TypeScript 项目中,.d.ts 文件是声明文件(Declaration Files),它们的作用是声明模块、库、类库或任何其他类型信息,以便 TypeScript 编译器能够正确地推断和处理类型信息

声明文件通常用于以下几种情况:

  1. 类型声明:为 JavaScript 库或代码提供类型信息,这样 TypeScript 编译器就能识别出变量、函数等元素的类型,从而提供更准确的类型检查和代码补全功能
  2. 模块声明:声明模块、命名空间、类库等导出的内容,使得其他 TypeScript 代码能够导入并使用这些模块。
  3. 环境声明:声明全局变量、函数等,这些通常在JavaScript代码中直接赋值,TypeScript需要知道它们的类型。
  4. 第三方库声明:很多流行的 JavaScript 库并没有官方的 TypeScript 类型声明,开发者可以创建声明文件来为这些库提供类型信息。 声明文件对于 TypeScript 项目的类型安全和开发体验至关重要,它们确保了类型系统的完整性和准确性。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

工业镜头常用参数之实效F(Fno.)和像圈

Fno. 工业镜头中常用到的参数F&#xff0c;有时候用F/#&#xff0c;Fno.来表示&#xff0c;指的是镜头通光能力的参数。它可用镜头焦距及入瞳直径来表示&#xff0c;也可通过镜头数值孔径&#xff08;NA&#xff09;和光学放大倍率&#xff08;β&#xff09;来计算。有效Fno.…

FPGA亚稳态学习总结

首先是组合逻辑电路考虑的是竞争冒险&#xff0c;冒险会产生毛刺。重点研究如何去毛刺 时序逻辑电路考虑的是时序不满足会产生的亚稳态问题&#xff1a;如何考量时序满不满足呢&#xff1f;根据不同的场景又有不同的说法。 时序分析的两组基本概念 建立时间与保持时间 1.在…

【Flask开发实战】安装mysql数据库与配置连接

1、安装mysql 通过yum方式安装MySQL服务器&#xff1a; sudo yum install mysql-server 在安装过程中&#xff0c;系统可能会要求确认安装。按下Y键并按回车键继续。 安装完成后&#xff0c;MySQL服务器应已自动启动。可以使用以下命令查看和启动MySQL服务&#xff1a; sudo…

Go语言介绍以及如何在Go语言中操作MySQL数据库

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 目录 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌…

卷起来——高级数据分析师

要成为一名高级数据分析师&#xff0c;需要掌握一系列的技能&#xff0c;包括数据处理、统计分析、机器学习、数据可视化以及业务理解等&#xff0c;喜欢或者想往这方面发展的童鞋们&#xff0c;卷起来&#xff0c;点击以下链接中的链接&#xff0c;备注"分析"进群交…

Godot 学习笔记(5):国际化多语言翻译,包含常用10种语言机翻!

文章目录 前言国际化翻译Api选择小牛测试 语言选择代码逻辑实体对象翻译帮助类导出模板读取文件翻译测试多语言测试 综合翻译文件准备测试代码测试结果 完整代码实体类翻译帮助类网络帮助类 最终效果翻译前翻译中翻译后 总结 前言 为了面向更大的市场&#xff0c;国际化是肯定…

TransformControls 是 Three.js 中的一个类,用于在网页中进行 3D 场景中物体的交互式操作。

demo案例 TransformControls 是 Three.js 中的一个类&#xff0c;用于在网页中进行 3D 场景中物体的交互式操作。让我们来详细讲解它的输入参数、输出、属性和方法&#xff1a; 输入参数&#xff1a; TransformControls 构造函数通常接受两个参数&#xff1a; camera&#…

gcc任意版本安装流程(linux)

一.更换镜像源 仅仅针对有需要换镜像需求的用户 sudo gedit /etc/apt/sources.list 用于在基于Debian的Linux发行版&#xff08;如Ubuntu&#xff09;上用来编辑软件源列表的命令。 我们更换阿里源&#xff1a; deb http://mirrors.aliyun.com/ubuntu/ focal main restricted…

Linux课程____shell脚本应用

一、认识shell 常用解释器 Bash , ksh , csh 登陆后默认使用shell&#xff0c;一般为/bin/bash&#xff0c;不同的指令&#xff0c;运行的环境也不同 二、 编写简单脚本并使用 # vim /frist.sh //编写脚本文件&#xff0c;简单内容 #&#xff01;/bin/bash …

ethers.js:sign(签名)

Signers 在ethers中Signer是以太坊账户的抽象&#xff0c;可以用来签名消息和交易&#xff0c;如将签名的交易发送到以太坊网络以执行状态更改的操作。 npm install ethers5.4.0// 引入 import { ethers } from ethers签名 this.provider new ethers.providers.Web3Provider(…

SD卡备份和烧录ubuntu20.04镜像

设备及系统&#xff1a;nuc幻影峡谷工控机&#xff0c;ubuntu20.04 一、确定SD卡设备号的两种方法 方法1&#xff1a; 将有ubuntu镜像的SD卡插入读卡器&#xff0c;再将读卡器插入电脑主机&#xff0c;在 工具 中打开 磁盘&#xff0c;查看SD卡设备号&#xff0c;如下图所示…

centos 7 安装磐维(PanWeiDB)数据库(单机)

前置环境准备 文件系统环境要求 文件系统环境所要求的扇区必须为512bytes&#xff0c;查看方法如下&#xff1a; [rootdevops-core-highapp3-b-32 ~]#df -h /apps/ [rootdevops-core-highapp3-b-32 ~]#ll /dev/mapper/vg--docker-lvapp [rootdevops-core-highapp3-b-32 ~]#f…

AXI-Stream——草稿版

参考自哔站&#xff1a;FPGA IP之AXI4-Lite AXI4-Stream_哔哩哔哩_bilibili 信号 传输层级从小到大 包(----------transfer--transfer--------)------delay--------包(----------transfer--transfer--------) TKEEP和TSTRB共同决定了是哪种数据流

BEVFusion-ICRA-2023异常

异常&#xff1a; RuntimeError: /tmp/mmcv/mmcv/ops/csrc/pytorch/cuda/sparse_indice.cu 126 cuda execution failed with error 2 ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 2901726) of binary: 解决&#xff1a; …

Arco动态生成表头信息

文章目录 需求分析需求 a-table动态生成表头,需求如下,部分是动态生成的表头,部分是固定的表头信息,现需要在动态表头的表中拿到固定表中的字段信息,但表头是动态表中返给的 分析 用两个表进行接收不同的信息,一个存放固定的 视图<a-table ref="tableRef&quo…

vue3从精通到入门2:虚拟DOM的生成与真实DOM的转化

虚拟 DOM 实现是 Vue 框架的核心部分之一&#xff0c;它负责在真实 DOM 之上抽象出一个轻量级的、可复用的 JavaScript 对象树&#xff0c;用于高效地更新视图。 什么是虚拟DOM? 虚拟 DOM 是一个编程概念&#xff0c;它将真实的 DOM 树抽象为一个轻量级的 JavaScript 对象树…

Spring事务-两种开启事务管理的方式:基于注解的声明式事务管理、基于编程式的事务管理

Spring事务-两种开启事务管理的方式 1、前期准备2、基于注解的声明式事务管理3、基于编程式的事务管理4、声明式事务失效的情况 例子&#xff1a;假设有一个银行转账的业务&#xff0c;其中涉及到从一个账户转钱到另一个账户。在这个业务中&#xff0c;我们需要保证要么两个账户…

Spark—GraphX实战 OneID

OneID 前面我们学习了ID Mapping&#xff0c;包括ID Mapping 的背景介绍和业务场景&#xff0c;以及如何使用Spark 实现ID Mapping&#xff0c;这个过程中涉及到了很多东西&#xff0c;当然我们都通过文章的形式介绍给大家了&#xff0c;所以你再学习今天这一节之前&#xff0…

python项目子模块配置

创建模块子应用 1.在项目中新建一个apps的目录&#xff0c;用于存放所有子模块应用 2.在apps包下创建所需应用 注册模块子应用 1.在主模块里面寻找到配置文件 2.在配置文件中找到 INSTALLED_APPS&#xff0c;添加相应路径apps.users Tips: 由于每次添加都要输入前缀apps.会…

解决:WARN:Tue Mar 26 23:36:57 CST 2024 WARN: Establishing SSL connection

小码在学习Java的JDBC编程中&#xff0c;碰到了一条非常长的异常警告&#xff0c;idea的框都装不下了&#xff01;&#xff01; 一、异常信息 Tue Mar 26 23:36:57 CST 2024 WARN: Establishing SSL connection without servers identity verification is not recommended. Ac…