Nx单体仓库中React应用无法读取common-assets资源库问题求助
解决Nx中React应用无法获取common-assets资源的问题
问题根源分析
你React应用的assets配置里,output路径设为了src/assets,这是核心错误——构建后的资源应该输出到dist目录的根级assets文件夹,而非源码目录的src下。NextJS配置生效正是因为它的output直接指向assets,对应到构建产物的正确位置。
具体修复步骤
修正assets输出路径
打开React应用的project.json,找到build.targets.options.assets数组里的common-assets配置项,把output从"src/assets"改成"assets":{ "input": "libs/common/assets/src/lib", "glob": "**/*", "output": "assets" }修改后资源会被复制到
dist/apps/sellers/assets目录,应用可通过/assets/[资源文件名]的路径正常访问。验证隐式依赖正确性
检查common-assets库的project.json,确认它的name字段确实是"common-assets",和React应用里implicitDependencies配置的名称完全匹配。清理Nx缓存
运行命令清除Nx构建缓存,避免旧缓存干扰新配置:nx reset测试构建与访问
执行构建命令:nx build sellers构建完成后查看
dist/apps/sellers/assets目录,确认common-assets的资源已被复制,之后在React应用中正常引用即可。
内容的提问来源于stack exchange,提问作者Louis Lecouturier
相关产品推荐
相关产品推荐

