zhangyuang / ssr

A most advanced ssr framework support React17/React18/Vue2/Vue3 on Earth that implemented serverless-side render specification.
http://doc.ssr-fc.com/
MIT License
2.61k stars 284 forks source link

fix: example project run error #260

Closed DCLangX closed 1 year ago

DCLangX commented 1 year ago

第一次提交pr,如有不足,还请大佬指出。本次改了两个我遇到的问题

1、项目下载到本地,pnpm安装后,vite启动示例项目nestjs-vue3-ssr-pinia,发现多个找不到模块的报错,缺失的均为宿主型的依赖,在cli和utils中动态require调用 微信截图_20230129142201 一番搜索研究后发现跟pnpm的依赖结构有关,尝试往cli和utils的peerDependencies记录宿主依赖,并在宿主项目中注解为硬链接安装,成功解决 https://github.com/pnpm/pnpm/issues/3558

2、第二个问题是,vite启动nestjs-vue3-ssr-pinia后,访问页面,出现如下报错 微信截图_20230129105523 一番调试,横跳了好久,最终碰巧发现是plugin-vue3依赖的@vitejs/plugin-vue版本与vite版本不匹配,vite 2.9.15官方库对应是@vitejs/plugin-vue 2.3.3版本,而项目里使用的是v1版本,故报错,升级依赖,完美解决 https://github.com/vitejs/vite/blob/3a5543db215cedbcadcfa2e14a1c48b14acdd3c5/packages/plugin-vue/package.json

zhangyuang commented 1 year ago

1、不需要加 peerDepenencies , 本来pnpm的机制就注定没办法跑通很多项目。直接在 .npmrchoist 依赖就行,通过 npm init ssr-app 创建的应用的 .npmrc 中已经做了相关设置。.npmrc 的生成规则在 create-ssr-app

2、可以单独把这块提个pr

DCLangX commented 1 year ago

好的,谢谢大佬