为什么构建期私密信息应使用 RUN --mount=type=secret 而不是 ARG?
为什么构建期私密信息应使用 RUN --mount=type=secret 而不是 ARG? 本文先给出可直接复述的结论,再用最小代码说明Docker 构建 secret ARG 泄露的工作方式、判断依据、项目边界和常见误区。
构建工具专题面试题第 2 页,显示第 51–100 题,共找到 211 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
为什么构建期私密信息应使用 RUN --mount=type=secret 而不是 ARG? 本文先给出可直接复述的结论,再用最小代码说明Docker 构建 secret ARG 泄露的工作方式、判断依据、项目边界和常见误区。
Dockerfile 中 CMD/ENTRYPOINT 的 shell 形式与 exec 形式对信号处理有何影响? 本文先给出可直接复述的结论,再用最小代码说明Dockerfile CMD ENTRYPOINT shell exec 信号的工作方式、判断依据、项目边界和常见误区。
选择 alpine、debian slim 或 distroless 基础镜像分别要接受什么取舍? 本文先给出可直接复述的结论,再用最小代码说明alpine slim distroless 基础镜像 选择的工作方式、判断依据、项目边界和常见误区。
构建时间戳写进镜像层为什么会破坏可重复构建,如何规避? 本文先给出可直接复述的结论,再用最小代码说明Docker 镜像 时间戳 可重复构建的工作方式、判断依据、项目边界和常见误区。
Docker 构建中如何用 RUN --mount=type=ssh 拉取私有 Git 依赖? 本文先给出可直接复述的结论,再用最小代码说明BuildKit ssh mount 私有仓库 构建的工作方式、判断依据、项目边界和常见误区。
Dockerfile 首行的 # syntax= 指令声明了什么,为什么影响可用特性? 本文先给出可直接复述的结论,再用最小代码说明Dockerfile syntax directive 前端版本的工作方式、判断依据、项目边界和常见误区。
RUN --mount=type=bind 与 type=tmpfs 在 Dockerfile 构建中各自适合什么? 本文先给出可直接复述的结论,再用最小代码说明BuildKit bind tmpfs mount 区别的工作方式、判断依据、项目边界和常见误区。
BuildKit 相比旧版 Docker 构建器有哪些核心改进? 本文先给出可直接复述的结论,再用最小代码说明Docker BuildKit 旧构建器 区别的工作方式、判断依据、项目边界和常见误区。
CI 检出具体提交构建时处于 detached HEAD 状态,这对构建和回写版本号有什么影响? 本文先给出可直接复述的结论,再用最小代码说明detached HEAD CI 检出提交的工作方式、判断依据、项目边界和常见误区。
前端仓库长期演进后本地 .git 体积膨胀,git gc 与 git prune 分别回收什么? 本文先给出可直接复述的结论,再用最小代码说明git gc prune 仓库体积回收的工作方式、判断依据、项目边界和常见误区。
需要把前端仓库交付给无法访问远程的隔离环境时,git bundle 如何打包仓库并支持增量? 本文先给出可直接复述的结论,再用最小代码说明git bundle 离线交付 增量打包的工作方式、判断依据、项目边界和常见误区。
如何用 git clean 安全清除前端工作区未跟踪的构建产物,又不误删刚写的新文件? 本文先给出可直接复述的结论,再用最小代码说明git clean 清除未跟踪文件 安全用法的工作方式、判断依据、项目边界和常见误区。
如何用 .gitattributes 标记构建产物文件,避免它们干扰 diff 与代码统计? 本文先给出可直接复述的结论,再用最小代码说明.gitattributes linguist-generated diff 产物标记的工作方式、判断依据、项目边界和常见误区。
中文字体几 MB 怎么破,字体子集化和 unicode-range 如何工作? 本文先给出可直接复述的结论,再用最小代码说明中文字体 子集化 unicode-range的工作方式、判断依据、项目边界和常见误区。
为什么不建议手写监听算 Core Web Vitals,web-vitals 库处理了哪些坑? 本文先给出可直接复述的结论,再用最小代码说明web-vitals 库 采集 归因的工作方式、判断依据、项目边界和常见误区。
Git 的 packfile 和 delta 压缩在什么时候触发,为什么松散对象多的仓库会变慢 本文先给出可直接复述的结论,再用最小代码说明Git packfile delta 压缩 gc的工作方式、判断依据、项目边界和常见误区。
QUIC 为什么选择构建在 UDP 之上而不是直接设计新的传输协议 本文先给出可直接复述的结论,再用最小代码说明QUIC 为什么 UDP 协议僵化的工作方式、判断依据、项目边界和常见误区。
Map.set 和 Set.add 返回集合本身,所以能接着调用;delete 返回布尔值表示删没删成功,clear 返回 undefined,都不能再链下去。讲清各方法返回值、链式调用是原地修改,以及 React 里更新 Map 状态的写法。
数组 includes 要从头逐个比较,Set.has 通常是哈希查找,查询次数多时 Set 更快。但建 Set 本身要遍历一遍,只查一次或每次都重建就不划算。讲清复杂度、什么时候值得建 Set,以及常见的写法错误。
具名导入只拉需要的导出,对 tree-shaking 最友好。命名空间导入理论上引入所有导出,但现代打包工具也能分析 ns.x 的用法做优化。附两种写法的实时绑定差异和实际打包效果对比。
import "lodash" 这样的裸模块名在 Node.js 中按包解析规则定位,浏览器原生模块却只认识可解析的 URL。打包器能在构建时改写导入,import map 可在浏览器中映射名称,CDN 还可能提供可直接导入的 URL;三种做法的运行条件不同。
module 与 nomodule 可让支持 ESM 的浏览器加载现代脚本,让旧浏览器回退到转译脚本。两类脚本的执行时机和兼容性并不完全对称;某些旧版浏览器会重复下载或执行,支持模块也不代表支持现代代码用到的每一项语法。
MongoDB 4.2 之后优化的索引构建方式相比旧版减少了什么阻塞? 本文先给出可直接复述的结论,再用最小代码说明MongoDB 索引构建 rolling index build 阻塞的工作方式、判断依据、项目边界和常见误区。
Next.js 如何为每个请求生成唯一的缓存键?这个过程是否受查询参数影响? 本文先给出可直接复述的结论,再用最小代码说明Next.js 缓存键 生成 查询参数的工作方式、判断依据、项目边界和常见误区。
在 Vercel 等部署平台中,Next.js 的缓存策略在构建时与运行时有何不同?哪些数据会进入边缘缓存? 本文先给出可直接复述的结论,再用最小代码说明Next.js 部署 缓存策略 边缘缓存的工作方式、判断依据、项目边界和常见误区。
在 Next.js 中,如何动态生成路由参数并用于数据获取?这是否影响缓存策略? 本文先给出可直接复述的结论,再用最小代码说明Next.js 动态路由 参数数据获取的工作方式、判断依据、项目边界和常见误区。
在 SSG 场景中,如何预加载某些未来可能被访问的数据以提升首次访问体验? 本文先给出可直接复述的结论,再用最小代码说明Next.js SSG 预加载未来数据的工作方式、判断依据、项目边界和常见误区。
服务端组件的生命周期与客户端组件有何本质区别?它们如何协同工作? 本文先给出可直接复述的结论,再用最小代码说明Next.js 服务端组件 生命周期 客户端组件 协同的工作方式、判断依据、项目边界和常见误区。
Route Handlers 是否支持流式响应?如果支持,应如何实现大文件下载的渐进式输出? 本文先给出可直接复述的结论,再用最小代码说明Next.js Route Handlers 流式响应 大文件渐进下载实现的工作方式、判断依据、项目边界和常见误区。
沿文件扩展名、最近 package.json 和歧义输入语法检测定位 Node.js 模块格式,给出嵌套包作用域示例,说明动态 import、构建工具和命令行输入的区别。
在 Nuxt 3 的静态导出模式下,useAsyncData 的数据是否仍然在服务端获取?如何确保静态页面包含最新数据? 本文先给出可直接复述的结论,再用最小代码说明Nuxt 3 静态导出 useAsyncData 服务端数据的工作方式、判断依据、项目边界和常见误区。
Nuxt 4 的预渲染模式如何生成静态 HTML?它与全量 SSR 的主要区别是什么? 本文先给出可直接复述的结论,再用最小代码说明Nuxt 预渲染 静态生成 全量 SSR 差异的工作方式、判断依据、项目边界和常见误区。
知识库重建期间如何保证线上检索不中断且不会查到新旧混合的数据? 本文先给出可直接复述的结论,再用最小代码说明原子切换 蓝绿部署 零停机重建的工作方式、判断依据、项目边界和常见误区。
为什么生产环境默认拿不到 React Profiler 数据, profiling 构建有什么开销? 本文先给出可直接复述的结论,再用最小代码说明React Profiler 生产环境 开销的工作方式、判断依据、项目边界和常见误区。
action 重定向的目标路径是否支持动态生成?如何基于表单数据构建目标地址? 本文先给出可直接复述的结论,再用最小代码说明action 动态重定向 目标路径构建的工作方式、判断依据、项目边界和常见误区。
React Server Components 的客户端边界划分如何影响最终发往浏览器的 JavaScript 包体积? 本文先给出可直接复述的结论,再用最小代码说明React RSC 客户端边界 打包 体积的工作方式、判断依据、项目边界和常见误区。
React Native 原生模块在 release 才崩溃而 debug 正常时,原生侧优先怀疑哪些构建差异? 本文先给出可直接复述的结论,再用最小代码说明React Native release 崩溃 原生模块 debug 正常的工作方式、判断依据、项目边界和常见误区。
React Native Android debug 与 release 构建在 JS bundle、so 库与网络明文上有哪些关键差异? 本文先给出可直接复述的结论,再用最小代码说明React Native Android debug release 构建差异的工作方式、判断依据、项目边界和常见误区。
React Native iOS 开启新架构时,Podfile 与构建环境变量要保持哪些一致性? 本文先给出可直接复述的结论,再用最小代码说明React Native iOS Podfile RCT_NEW_ARCH_ENABLED的工作方式、判断依据、项目边界和常见误区。
React Native Metro 解析 .native.js、.android.js 与图片 @2x/@3x 资源时,原生集成侧要保证什么? 本文先给出可直接复述的结论,再用最小代码说明React Native Metro 平台后缀 资源分辨率的工作方式、判断依据、项目边界和常见误区。
为什么 React Native 线上包中残留 console.log 会造成可感知的性能损耗? 本文先给出可直接复述的结论,再用最小代码说明React Native console.log 性能 线上移除的工作方式、判断依据、项目边界和常见误区。
React Native 中本地静态图片与远程图片在打包与渲染性能上有哪些本质区别? 本文先给出可直接复述的结论,再用最小代码说明React Native 本地图片 require 远程图片的工作方式、判断依据、项目边界和常见误区。
ROLLUP、CUBE 和 GROUPING SETS 分别生成哪些分组层级,结果里的 NULL 如何区分? 本文先给出可直接复述的结论,再用最小代码说明SQL ROLLUP CUBE GROUPING SETS GROUPING 函数的工作方式、判断依据、项目边界和常见误区。
SvelteKit 部署至 Netlify 时,如何安全地读取环境变量并用于 API 配置? 本文先给出可直接复述的结论,再用最小代码说明SvelteKit Netlify 环境变量 安全读取的工作方式、判断依据、项目边界和常见误区。
SvelteKit 部署到 Vercel 时,如何配置环境变量使其在构建时生效? 本文先给出可直接复述的结论,再用最小代码说明SvelteKit Vercel 环境变量 构建时注入的工作方式、判断依据、项目边界和常见误区。
Playwright Component Testing 与用 Vitest+Testing Library 跑组件测试的核心差异是什么 本文先给出可直接复述的结论,再用最小代码说明Playwright 组件测试与 Vitest Testing Library 对比的工作方式、判断依据、项目边界和常见误区。
在 Vitest 中用 fake timers 测试防抖或定时 UI 时与 Testing Library 异步查询如何配合 本文先给出可直接复述的结论,再用最小代码说明Vitest fake timers 配合 Testing Library 异步查询的工作方式、判断依据、项目边界和常见误区。
Vitest 中 jsdom 与 happy-dom 环境的选择依据是什么 本文先给出可直接复述的结论,再用最小代码说明Vitest jsdom happy-dom 环境 选择的工作方式、判断依据、项目边界和常见误区。
Vitest 中 expect.assertions() 和 expect.hasAssertions() 在异步测试里分别防止什么漏检? 本文先给出可直接复述的结论,再用最小代码说明Vitest expect.assertions 异步断言漏检的工作方式、判断依据、项目边界和常见误区。
Vitest 的 vi.useFakeTimers() 如何跳过 setTimeout 等待,为什么必须配合 advanceTimersByTime 而非直接 await? 本文先给出可直接复述的结论,再用最小代码说明Vitest fake timers advanceTimersByTime的工作方式、判断依据、项目边界和常见误区。