nest 静态文件打包

最近在开发我的个人低代码平台,后端使用的是nest,在打包文件的时候遇到一些问题记录一下

遇到的问题

在我们使用nest打包的时候,如果我们没有配置assets,nest会默认忽略我们的静态文件(如图片等),但是在配置assets的时候,也遇到了一些问题,使用assets配置路径的情况下并没有将静态文件打包

一开始我配置的是,./src/assets/images 文件夹下所有的文件:

json 复制代码
"compilerOptions": {
    "deleteOutDir": true,
    "assets": [
        {
            "include": "./src/assets/**/*",
            "watchAssets": true
        }
    ]
}

但是这个并没有将文件打包上去,后来在进过一些官网资料的查找后,测试找到了解决防范

解决方法一

设置直接打包所有的图片

json 复制代码
"compilerOptions": {
    "deleteOutDir": true,
    "assets": [
        {
            "include": "**/*.jpg",
            "watchAssets": true
        }
    ]
}

但是注意**/*.jpg 和 *.jpg 的区别

  • *.jpg:只会匹配 当前目录 下的 .jpg 文件
  • **/*.jpg:会递归匹配 当前目录 以及所有子目录中的 .jpg 文件

解决方法二

配置某个路径下的所有的资源

json 复制代码
"compilerOptions": {
    "deleteOutDir": true,
    "assets": [
        {
            "include": "**/assets/**/*",
            "watchAssets": true
        }
    ]
}

路径的区别

这三个路径模式的区别如下:

  1. ./src/assets/\* :
    • 只匹配 ./src/assets/ 目录下的文件和直接的子目录。
    • 不会递归匹配子目录中的文件。
    • 例如,如果 ./src/assets/ 里有文件 file1.txt 和子目录 dir1,那么 ./src/assets/* 会匹配 file1.txt 和 dir1,但不会匹配 dir1 里的文件。
  2. ./src/assets/\**/\* :
    • 递归匹配 ./src/assets/ 及其所有子目录下的所有文件。
    • 会进入任意深度的子目录,匹配所有文件。
    • 例如,如果 ./src/assets/ 下有文件 file1.txt 和子目录 dir1,而 dir1 下又有文件 file2.txt,那么 ./src/assets/**/* 会匹配 file1.txt、dir1 和 dir1/file2.txt,以此类推,直到匹配所有文件和目录。
  3. ./src/assets/\** :
    • 这个模式匹配的是 ./src/assets/ 及其所有子目录 的目录(不包括文件)。
    • 只匹配目录,并递归查找子目录。
    • 例如,如果 ./src/assets/ 中有文件 file1.txt 和子目录 dir1,那么 ./src/assets/** 只会匹配 ./src/assets/ 和 ./src/assets/dir1,而不会匹配 file1.txt 或 dir1/file2.txt。

补充

个人低代码:github.com/xiaojunnany... (求个star,还在开发中,欢迎体验)

博客:www.xiaojunnan.cn/

目前正在做低代码与AI的结合,有想法的欢迎与我沟通

相关推荐
Henry-SAP6 分钟前
SAP PP中的核心业务流程——离散制造、重复制造、流程制造三大模式解析
前端·数据库·人工智能·制造
徐小夕11 分钟前
下载量超 30 万的开源智能体 Prime Agent:它把自己从 TypeScript 重写成了 Rust
前端·vue.js·github
Zhao-Jichao16 分钟前
AI Prompting for Everyone 课程笔记 - P20 实验与期末项目 Lab and Final Project
前端·人工智能·笔记
Moment41 分钟前
为什么这么多 Agent Harness 都选择 TypeScript
前端·后端·面试
toooooop81 小时前
CRMEB 故障排查笔记:安全网关只放行 GET/POST 怎么办
前端·javascript·vue.js·thinkphp6·crmeb
涛涛ing1 小时前
我现在最怕的不是 AI 写不出代码,是它写得太快,快到我不好意思说“等一下”
前端
AllData公司负责人1 小时前
【产品便捷使用一】AIIData 数据中台:企业基础版核心能力支持,一站式全链路数据处理实操指南
大数据·前端·数据治理·数据可视化·数据开发·数据服务·数据接入
vipxieliang1 小时前
JavaScript 模板字符串与标签模板:不只是拼接
前端·javascript
恋猫de小郭2 小时前
Flutter 开始支持 Jetpack Compose Platform View
android·前端·flutter
IT_陈寒2 小时前
React实战技巧总结
前端·人工智能·后端