• R语言已解决
  • blogdown 博客站点切换导致 RStudio Viewer 残留上个网站样式

我本地拉取有统计之都主站仓库个人博客仓库,都是用 blogdown 包搭建的,以 Hugo 为博客主题渲染工具。统计之都有一套 hugo 主题,我的个人博客也有一套不同的 hugo 主题。当我本地渲染过统计之都主站后,切换到个人博客,渲染出现下图所示的现象,上个博客主题覆盖了个人博客主题。

复现的话,需要先克隆主站和我个人博客。我的运行环境如下

> xfun::session_info(packages = c("blogdown"), dependencies = F)
R version 4.2.2 (2022-10-31)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Ventura 13.1, RStudio 2022.12.0.353

Locale: en_US.UTF-8 / en_US.UTF-8 / en_US.UTF-8 / C / en_US.UTF-8 / en_US.UTF-8

Package version:
  blogdown_1.16

Hugo version: 0.109.0

    Cloud2016 整个 RStudio 就是个浏览器,浏览器一般都有缓存,你是看到了上一个地址的缓存。两种办法:要么关掉 RStudio 再打开,要么以不同的端口运行服务器,比如 blogdown::serve_site(port = 4322)(默认 4321)。

    如果我没理解错,你的意思是在同一个 RStudio 窗口预览两个网站吧?所以才会出现那样的情况。我一般是不同的项目都各自单独打开,这样预览的时候会默认使用不同端口。

      yihui 明白了,是缓存的问题,单独打开,换个端口就好了。

      在 .Rprofile 里给自己的博客站点指定一个端口 4322 就好了。

      options(servr.port = 4322)

      而主站的就用默认的端口号就行。

        Cloud2016 两个 RStudio 项目各自分别打开的话,应该不至于出现互相影响的情况,也不需要指定端口(用默认的随机端口就好)。

        如果实在需要指定端口,也可以指定一个随机的:servr::random_port()

          yihui 我想你考虑的是两个项目同时打开、渲染的情况,而且还是先打开 cosx (先把 4321 的坑给占了)而后是个人项目。我指的是,今天在项目 1 上搞,之后就连 RStudio 都关闭了,过几天,在项目 2 上搞,打开的时候,还是用 4321 端口,这就造成了楼主的问题。反正我也就在两个项目之间穿梭,干脆给其中一个项目指定另一个端口就行了。

            Cloud2016 之后就连 RStudio 都关闭了

            如果这样都有缓存影响的话,那 RStudio 的缓存有点过度了。

            Cloud2016 我想你考虑的是两个项目同时打开、渲染的情况

            是的,我个人网站项目常年开着,所以 4321 的坑一直是占着的。其它项目打开时,就会自动用其它的随机端口。

              yihui 那 RStudio 的缓存有点过度了。

              我觉得是的,之前上一个 RStudio 版本好像没这个问题。我现在也用的新版本

              RStudio 2022.12.0+353 "Elsbeth Geranium" Release (7d165dcfc1b6d300eb247738db2c7076234f6ef0, 2022-12-03) for macOS
              Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) RStudio/2022.12.0+353 Chrome/102.0.5005.167 Electron/19.1.3 Safari/537.36