首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么不将我的文件保存在TS的dist目录中

将文件保存在TS(TypeScript)的dist目录中是一种不推荐的做法。以下是详细的解答:

保存文件的目录结构和规划是软件开发中的一个重要决策,对于不同的文件类型和用途,应该选择合适的目录来存储它们。对于TS项目中生成的JavaScript文件(通常位于dist目录),不建议将其他文件直接保存在该目录中,原因如下:

  1. 维护性:dist目录通常是编译输出目录,它的内容可能会被频繁地改变和覆盖。将其他文件存放在其中会增加对文件版本控制和维护的复杂性。如果需要更新或替换dist目录,那些额外的文件可能会丢失或冲突。
  2. 构建过程:在软件开发中,通常使用构建工具(例如webpack、gulp、parcel)来管理和自动化构建过程。这些工具通常配置了指定的输入和输出目录,将特定的文件转换、编译、压缩等。将其他文件放入dist目录可能会干扰构建工具的预期行为,导致构建过程出现错误。
  3. 清晰性:良好的目录结构有助于项目的组织和维护。将不同类型的文件保存在各自的目录中,可以更清晰地识别和访问它们。这种规范性的目录结构也有助于团队合作和项目迭代。

对于存储文件的合适位置,可以根据文件的类型和用途进行决策。以下是一些常见的文件类型及其推荐的存储位置:

  1. 静态资源文件(例如图像、样式表、字体等):通常应该放在一个单独的目录(例如"assets")中,使其与源代码分开,方便统一管理和部署。
  2. 配置文件:可以放在项目根目录下的"config"或者"settings"目录中,或者根据具体情况将其集中存放在一个专门的目录中。
  3. 测试文件:通常应该与源代码分开,放在一个独立的"tests"目录中。

总之,对于TS项目,建议将dist目录保持纯粹,只保存由TS编译生成的JavaScript文件。其他类型的文件应该根据类型和用途选择合适的目录来存储,并在构建工具的配置中进行相应的处理和部署。这样可以保持代码的整洁性和可维护性,同时提高开发效率和团队合作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 《现代Typescript高级教程》解读TSConfig

    "outDir": "dist" 指定输出目录为 "dist"。 同时,我们使用 include 和 exclude 配置选项分别指定了需要编译文件包含规则和排除规则。..."include": [ "src/**/*.ts", "test/**/*.ts" ] exclude 是一个文件或者文件数组,用于指定需要排除文件文件路径模式。..."exclude": [ "node_modules", "dist" ] 在上述示例,我们将 src 文件夹和 test 文件夹下所有 TypeScript 文件包含在编译过程,并排除了...在项目根目录下创建一个名为 index.ts 文件,并添加以下代码: import * as tsconfig from '....": { "build": "tsc" } } 最后,运行构建命令进行构建: $ npm run build 构建完成后,我们文件 将位于 dist 目录下。

    58820

    TS】612- 了不起 tsconfig.json 指南

    在 TypeScript 开发,tsconfig.json 是个不可或缺配置文件,它是我们在 TS 项目中最常见配置文件,那么你真的了解这个文件吗?它里面都有哪些优秀配置?...什么是 tsconfig.json TypeScript 使用 tsconfig.json 文件作为其配置文件,当一个目录存在 tsconfig.json 文件,则认为该目录为 TypeScript...指定需要编译目录指定输入文件情况下执行 tsc 命令,默认从当前目录开始编译,编译所有 .ts 文件,并且从当前目录开始查找 tsconfig.json 文件,并逐级向上级目录搜索。...removeComments 配置生效了,将我们添加注释代码移除了。..."files": [ // 指定编译文件是src目录leo.ts文件 "scr/leo.ts" ] } 6. include include 属性作用是指定编译需要编译文件目录

    2.1K30

    了不起 tsconfig.json 指南

    在 TypeScript 开发,tsconfig.json 是个不可或缺配置文件,它是我们在 TS 项目中最常见配置文件,那么你真的了解这个文件吗?它里面都有哪些优秀配置?...什么是 tsconfig.json TypeScript 使用 tsconfig.json 文件作为其配置文件,当一个目录存在 tsconfig.json 文件,则认为该目录为 TypeScript...指定需要编译目录指定输入文件情况下执行 tsc 命令,默认从当前目录开始编译,编译所有 .ts 文件,并且从当前目录开始查找 tsconfig.json 文件,并逐级向上级目录搜索。...removeComments 配置生效了,将我们添加注释代码移除了。..."files": [ // 指定编译文件是src目录leo.ts文件 "scr/leo.ts" ] } 6. include include 属性作用是指定编译需要编译文件目录

    3K10

    了不起 tsconfig.json 指南

    [封面.png] 在 TypeScript 开发,tsconfig.json 是个不可或缺配置文件,它是我们在 TS 项目中最常见配置文件,那么你真的了解这个文件吗?它里面都有哪些优秀配置?...什么是 tsconfig.json TypeScript 使用 tsconfig.json 文件作为其配置文件,当一个目录存在 tsconfig.json 文件,则认为该目录为 TypeScript...为什么使用 tsconfig.json 通常我们可以使用 tsc 命令来编译少量 TypeScript 文件: /* 参数介绍: --outFile // 编译后生成文件名称 --target...指定需要编译目录指定输入文件情况下执行 tsc 命令,默认从当前目录开始编译,编译所有 .ts 文件,并且从当前目录开始查找 tsconfig.json 文件,并逐级向上级目录搜索。...removeComments 配置生效了,将我们添加注释代码移除了。

    2.6K42

    Deno 入门指南

    /dist/index.js deno install 可以将我代码生成可执行文件进行直接使用 #!...deno 可执行文件默认都放在 /Users/yangjunning/.deno/bin/ 目录下,我们需要将它注册到环境变量: $ export PATH="/Users/yangjunning...您可以指定一系列用逗号分隔目录文件,来提供文件系统白名单。 --allow-run 允许运行子进程。请注意,子进程不在沙箱运行,因此没有与 deno 进程相同安全限制,请谨慎使用。.../dist/index.js deno install 可以将我代码生成可执行文件进行直接使用 $ deno install --allow-read --allow-net --allow-write.../src/index.ts deno 可执行文件默认都放在 /Users/yangjunning/.deno/bin/ 目录下,我们需要将它注册到环境变量: $ export PATH="/Users

    1.5K30

    使用Vue3+TS重构百星websocket插件

    Observer.js 观察者模式,websocket服务核心功能封装 build.js 编译后代码文件 dist 编译后项目文件夹 node_modules 项目依赖库 src 项目源码文件夹...": [ "src/**/*.ts" ]// 要打包文件 } 修改已经废弃语法 在插件入口文件Main.js,插件需要向Vue全局挂载属性,即Vue.prototype.xx =...但是在ts它就会报错,Websocket存在sendObj方法,一开始我想在lib.dom.d.ts定义这个方法,但是想了想这样做不妥,不能修改全局库声明文件,毕竟这是插件。...scripts": { "build": "tsc" } } 随后,执行yarn run build命令,就会在项目的根目录下创建dist文件夹并将打包后js文件放入其中。...image-20201102214629366 dist目录文件就是我们要发布至npm仓库包,在发布至npm仓库之前,我们要先做一些事情,让插件更加规范化。

    3.1K30

    Win10 64位 win7 64位 驱动安装上,提示 文件哈希值不在指定目录文件。此文件可能已损坏或被篡改

    【疑难解答】->疑难解答【高级选项】->高级选项【启动设置】->启动设置【重启】 第二步、禁用驱动程序强制签名 平板:等待,到了高级启动设置界面,按下F7,这样本次启动就是“禁用驱动程序强制签名”启动。...台式:需要先进入bios(进入bios方式跟主板有关系,每个型号主板进入bios键都不一样,一般【Delete】、【F8】、【F2】、【F12】这几个键是最常见),按住bios启动键到bios界面...,松开bios启动键,按界面指定方法(一般是【Esc】键)退出Bios设置界面就到了高级启动设置界面,按下F7,这样本次启动就是“禁用驱动程序强制签名”启动

    1.2K20

    TypeScript在react项目中实践

    TypeScript在react项目中实践 前段时间有写过一个TypeScript在node项目中实践。 在里边有解释了为什么要使用TS,以及在Node一个项目结构是怎样。...我们会使用ts进行React程序开发 2. .tsx文件在vs code上icon比较好看 :p tsconfig.json 是用于tsc编译执行一些配置文件 components 组件存放目录...common目录,这个目录是存放一些公共函数和公共config,不同于utils或者config是,这里代码是前后端共享,所以这里边函数一定要是完全包含任何环境依赖,包含任何业务逻辑.../dist/vendors-manifest.json'), }), ] } 这样在watch文件时,打包就会跳过verdors存在那些包了。...关于ESLint配置文件.eslintrc,在本项目中存在两份。

    1.8K30

    Node.js项目TypeScript改造指南

    dist目录,而 TypeScript 是需要编译,所以重点是要独立出一个源码目录和编译目标目录,推荐目录结构如下,另外,根据不同技术栈还有一堆其他配置文件如 prettier、travis 等等这里就省略了.../usr/bin/env node |-- dist # 项目使用ts开发,dist为编译后文件目录,注意package.jsonmain字段要指向dist目录 |-- docs...# 源码目录,注意此目录只放ts文件,其他文件如json、模板等文件放templates目录 |-- sub # 子目录 |-- cli.ts # cli...我们将声明文件补充到typings文件,以包名作为子目录名,最简单写法如下,这样 IDE 和 TypeScript 编译便不会报错了。...declare module 'mod' 至于为什么需要放在 typings 目录,并且以包名作为子包目录,因为这样写,ts-node(下文会提到)识别不了,暂且按照 ts-node 规范来吧。

    4.4K20

    Node.js项目TypeScript改造指南

    dist目录,而 TypeScript 是需要编译,所以重点是要独立出一个源码目录和编译目标目录,推荐目录结构如下,另外,根据不同技术栈还有一堆其他配置文件如 prettier、travis 等等这里就省略了.../usr/bin/env node |-- dist # 项目使用ts开发,dist为编译后文件目录,注意package.jsonmain字段要指向dist目录 |-- docs...# 源码目录,注意此目录只放ts文件,其他文件如json、模板等文件放templates目录 |-- sub # 子目录 |-- cli.ts # cli...我们将声明文件补充到typings文件,以包名作为子目录名,最简单写法如下,这样 IDE 和 TypeScript 编译便不会报错了。...declare module 'mod' 至于为什么需要放在 typings 目录,并且以包名作为子包目录,因为这样写,ts-node(下文会提到)识别不了,暂且按照 ts-node 规范来吧。

    4.6K10

    Node.js 项目 TypeScript 改造指南

    dist目录,而 TypeScript 是需要编译,所以重点是要独立出一个源码目录和编译目标目录,推荐目录结构如下,另外,根据不同技术栈还有一堆其他配置文件如 prettier、travis 等等这里就省略了.../usr/bin/env node |-- dist # 项目使用ts开发,dist为编译后文件目录,注意package.jsonmain字段要指向dist目录 |-- docs...# 源码目录,注意此目录只放ts文件,其他文件如json、模板等文件放templates目录 |-- sub # 子目录 |-- cli.ts # cli...我们将声明文件补充到typings文件,以包名作为子目录名,最简单写法如下,这样 IDE 和 TypeScript 编译便不会报错了。...declare module 'mod' 至于为什么需要放在 typings 目录,并且以包名作为子包目录,因为这样写,ts-node(下文会提到)识别不了,暂且按照 ts-node 规范来吧。

    8.3K32

    会写 TypeScript 但你真的会 TS 编译配置吗?

    如果 tsconfig.json 文件 files 和 include 字段都不存在,则默认包含 tsconfig.json 文件所在目录及子目录所有文件,且排除在 exclude 字段声明文件文件夹.../Await、Promise、扩展运算符,并在 tsconfig.jon -> target 设置为 ES5: 验证 target 降级处理 然后发现在右侧 dist/index.js 文件,依然存在.../src",则 src 目录 TS 文件不能引用 src 目录以外 ts 文件,一般我们会设置为 ./src 或 ..../dist",及将 TSC 编译输出 JS 文件,统一输出 ./dist 目录下。...1.8.4 以上并且安装 atom-typescript 插件 } 四、打包工具 TypeScript 前文讲到了为什么推荐直接使用 TSC 作为项目的打包编译工具,那么接下来就简单看看在常见几款打包工具针对

    3.7K41

    TypeScript必知三部曲(一)TypeScript编译方案以及IDE对TS类型检查

    为什么IDE打开ts项目的时候,就能有这些ts代码类型定义?为什么明明IDE对代码标红报错,但代码有能够编译出来?...指定ts代码存放目录,这里就是当前目录(项目根目录)下src文件夹,能够匹配到我们编写项目根目录/src/index.ts; outDir:指定ts代码经过编译后,生成js代码存放目录。...如果写任何配置项,env 等价于 latest,也等价于 es2015 + es2016 + es2017 三个相加(包含 stage-x 插件);@babel/preset-typescript..../.babelrc -x .ts -d dist" + }, ... } 编译指令指定了babel要读取源代码所在目录(src)、babel配置文件地址(--config-file ./.babelrc...)、babel需要处理文件扩展(-x .ts)、编译代码生成目录(-d dist)。

    71920

    你不知道 Electron (二):了解 Electron 打包

    是怎么做到将我网页代码打包成一个可执行程序呢?..."electron-builder" } 打包 生成 package 目录但是没有打包为一个文件 npm run pack 生成一个 exe 或者 dmg 文件 npm run dist 指定平台和架构..."packages/electron-builder/src/cli/cli.ts" 从源码我们不难定位到 packages/electron-builder/src/cli/cli.ts 这个文件就是命令入口文件...从入口文件往下分析: packages/electron-builder/src/builder.ts cli.ts 文件 import 了上一层目录 builder.ts 文件导出 build...可执行文件是怎么来 通过实现一个通用可执行程序,这个程序做事情是将 resources/app.asar 作为项目根目录,运行 app.asar/package.json main 指定文件作为入口文件

    3.2K20

    在发布组件库之前,你需要先掌握构建和发布函数库

    那么最适合作为我们学习入口的当然是函数库构建,因为它通常只涉及 JS/TS,这是我们最熟悉领域。 构建函数库 为什么要做构建工作?...截至到目前,我们在本专栏实现一些组件/函数/Hook等内容都还停留在源码层面,基本上是以.ts, .tsx, .vue等形式存在,并且我们可以发现,package.jsonmain入口都是index.ts...而在我们认知,我们用一些常见库,它们提供main, module等入口通常是xxx.js,而不是用一个.ts文件作为入口。...仔细品味,不难想明白除了清理目录dist, es, lib, types 等目录工作需要先行,其他工作都可以并行执行(因为它们之间没有依赖关系)。...清理目录 因为在开始新构建工作之前可能存在上一次构建产物,所以对于构建产生 dist, es, lib, types 等目录,我们需要将其清理干净,这本质上是文件操作,但是在 gulp 生态中有很多插件可以让我们选择

    81720
    领券