首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >快速刷新问题: NextJs无法正确处理本地包。如何在开发过程中强制清除缓存?

快速刷新问题: NextJs无法正确处理本地包。如何在开发过程中强制清除缓存?
EN

Stack Overflow用户
提问于 2021-12-14 11:32:59
回答 1查看 168关注 0票数 0

我使用NextJs (和React)和mobx状态树(但可以是上下文或redux)构建一个应用程序作为包管理器。所有的存储都是在一个名为SMK (状态管理工具包)的npm包中创建和处理的,我创建这个包是为了使子存储在我的移动和web应用程序中可重用。

的工作方式:

  1. 在SMK上创建带有modelsactionsviews的子存储,并将其导出为一个模块。
  2. 使用yarn add @my-repo/smk添加SMK。
  3. 在我的应用程序中创建根存储,并将子存储从SMK导入为根存储的子存储。
  4. 构建并启动应用程序,一切都运行良好。

但是我需要在本地运行和发布SMK,以使开发更加容易。我以前使用的解决方案是yalc

使用yalc并在本地运行--这是一个过程:

  1. 在SMK中,运行yarn start。(这将执行nodemon --ignore src/index.ts -e js,ts,tsx,json --watch src/ --exec yalc push --scripts)
  2. 在应用程序中,运行yalc add @my-repo/smk。(这将添加一个类似于"@my-repo/smk": "file:.yalc/@my-repo/smk"的依赖项)。
  3. 在应用程序中,运行yarn build,然后运行yarn start

然后瞧!一切都很完美,我在本地的SMK上所做的任何改变在应用程序上都是完美的。

但是,当我运行将yarn dev next dev 作为 NextJs的违约 的时,它不起作用。

这是我面临的错误:

错误解释:因为我只在本地添加了setTestingStatetestingState,所以它是不存在的。

可能的原因:快速刷新没有正确刷新缓存。

我试过:

  • 添加// @refresh reset来强制它,但没有工作。
  • 停止并启动应用程序。
  • 生成、启动并运行dev。(为构建而不是为开发人员工作)

yarn dev yalc**?**解决这个问题的解决方案/解决方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-20 17:33:24

看起来这是NextJs上的一个bug,我们可以找到一些devs请求NextJs允许我们禁用Fast,而且看起来他们并不关心或者只是不打算改变它。

所以,我找到了一个第三方图书馆,下一个遥控器,就是为我解决这个问题。基本上,它是一个替代next dev的替代脚本,它可以快速简单地构建并激活一个观察者。

package.json使用

代码语言:javascript
复制
"scripts": {
   "start": "next-remote-watch @my-repo/smk"
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70348172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档