diff --git a/404.html b/404.html index ba51b4025..542ec3f3e 100644 --- a/404.html +++ b/404.html @@ -1 +1 @@ -404: This page could not be found

404

This page could not be found.

\ No newline at end of file +404: This page could not be found

404

This page could not be found.

\ No newline at end of file diff --git a/Promptopia-dev-note-search-implementation.html b/Promptopia-dev-note-search-implementation.html index a24957fec..57a97550c 100644 --- a/Promptopia-dev-note-search-implementation.html +++ b/Promptopia-dev-note-search-implementation.html @@ -1,4 +1,4 @@ -Promptopia 开发笔记(1)——搜索功能的实现与最佳实践

🧑‍💻 Promptopia 开发笔记(1)——搜索功能的实现与最佳实践

date
Jun 13, 2024
slug
Promptopia-dev-note-search-implementation
status
Published
tags
Next.js
React
Website
summary
如何实现搜索功能?
type
Post

前言

为了练手 Nextjs,最近在写一个项目,大概长这样,主要就是做一个大家分享大模型 Prompt 的网站:
notion image
主要技术栈如下:
  1. 使用 nextjs 作为整体框架
  1. 使用next-auth/react 实现谷歌登录
  1. 使用 MongoDB 实现后端数据库(不得不感叹实在太方便了,直接就是一个在线服务,可以直接在 github page 这样的静态网站托管服务上部署网站,而且小体量还是免费的,良心企业)
  1. 使用tailwindCSS 写样式(这个项目和我之前写的 Portfolio 项目同样都用了这个,对于写样式来说实在是太方便了)

搜索功能实现

结合 MongoDB 来实现增删改还是比较方便的,但在实现搜索功能方面如果只需要搜索 prompt 内容和 tag 内容还是比较简单的,但还要涉及搜索 username ,而 prompt 的 Schema 里只有 userId,需要对两个表进行关联搜索,实现起来还是需要动点脑子的。

从搜索框开始考虑

首先我们来看这个输入框:
notion image
const handleSearchChange = e => {
+Promptopia 开发笔记(1)——搜索功能的实现与最佳实践

🧑‍💻 Promptopia 开发笔记(1)——搜索功能的实现与最佳实践

date
Jun 13, 2024
slug
Promptopia-dev-note-search-implementation
status
Published
tags
Next.js
React
Website
summary
如何实现搜索功能?
type
Post

前言

为了练手 Nextjs,最近在写一个项目,大概长这样,主要就是做一个大家分享大模型 Prompt 的网站:
notion image
主要技术栈如下:
  1. 使用 nextjs 作为整体框架
  1. 使用next-auth/react 实现谷歌登录
  1. 使用 MongoDB 实现后端数据库(不得不感叹实在太方便了,直接就是一个在线服务,可以直接在 github page 这样的静态网站托管服务上部署网站,而且小体量还是免费的,良心企业)
  1. 使用tailwindCSS 写样式(这个项目和我之前写的 Portfolio 项目同样都用了这个,对于写样式来说实在是太方便了)

搜索功能实现

结合 MongoDB 来实现增删改还是比较方便的,但在实现搜索功能方面如果只需要搜索 prompt 内容和 tag 内容还是比较简单的,但还要涉及搜索 username ,而 prompt 的 Schema 里只有 userId,需要对两个表进行关联搜索,实现起来还是需要动点脑子的。

从搜索框开始考虑

首先我们来看这个输入框:
notion image
const handleSearchChange = e => {
     setSearchText(e.target.value)
   }
 
@@ -230,4 +230,4 @@
   )
 }
 
-export default Feed

总结

跟着视频敲代码很简单,很多时候 youtuber 不解释他为什么这么写,你也不会去思考这个功能为什么要分这么多个文件?分这么多层?但一旦从头开始思考一个功能如何实现,需要思考的问题就很多了,比如我们实际上只是实现了一个非常简单的搜索功能,但本身涉及的有:
  1. 防抖功能的实现
  1. 搜索 api 的实现
  1. 自定义 Hook 的封装与调用

Wish you have a good day! 😇

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file +export default Feed

总结

跟着视频敲代码很简单,很多时候 youtuber 不解释他为什么这么写,你也不会去思考这个功能为什么要分这么多个文件?分这么多层?但一旦从头开始思考一个功能如何实现,需要思考的问题就很多了,比如我们实际上只是实现了一个非常简单的搜索功能,但本身涉及的有:
  1. 防抖功能的实现
  1. 搜索 api 的实现
  1. 自定义 Hook 的封装与调用

Wish you have a good day! 😇

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file diff --git a/TODO.html b/TODO.html index 8308c9e5f..be0d9c00f 100644 --- a/TODO.html +++ b/TODO.html @@ -1 +1 @@ -TODO List

😶‍🌫️ TODO List

date
May 30, 2024
slug
TODO
status
Published
tags
TODO
summary
当前的一些小计划
type
Page
Portfolio 这个项目中,使用 imageLoader 重构图片 src 拼接

在使用 nobelium 这个项目的过程中,发现有一些问题,准备研究一下,看能不能实现出来,merge 一下
(这个项目最近的一次更新已经是6个月以前了,不知道还在不在维护,不维护只能我自己改改了)
图片不支持点击放大(这个应该很好解决吧)
不支持在 notion 自己上传的 icon(这个应该要配合notion api 测试一下看看,按理来说总是能拿到数据的,只是现在好像没考虑到这个情况)
不支持notion中的github 链接

Promptopia

Implement search
Search by prompt
Search by tag
Search by username
Implement click on tag
Implement view other profiles

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file +TODO List

😶‍🌫️ TODO List

date
May 30, 2024
slug
TODO
status
Published
tags
TODO
summary
当前的一些小计划
type
Page
Portfolio 这个项目中,使用 imageLoader 重构图片 src 拼接

在使用 nobelium 这个项目的过程中,发现有一些问题,准备研究一下,看能不能实现出来,merge 一下
(这个项目最近的一次更新已经是6个月以前了,不知道还在不在维护,不维护只能我自己改改了)
图片不支持点击放大(这个应该很好解决吧)
不支持在 notion 自己上传的 icon(这个应该要配合notion api 测试一下看看,按理来说总是能拿到数据的,只是现在好像没考虑到这个情况)
不支持notion中的github 链接

Promptopia

Implement search
Search by prompt
Search by tag
Search by username
Implement click on tag
Implement view other profiles

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/Promptopia-dev-note-search-implementation.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/Promptopia-dev-note-search-implementation.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/Promptopia-dev-note-search-implementation.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/Promptopia-dev-note-search-implementation.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/TODO.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/TODO.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/TODO.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/TODO.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/dev-dependencies.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/dev-dependencies.json similarity index 84% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/dev-dependencies.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/dev-dependencies.json index 532ff4db3..2f3899840 100644 --- a/_next/data/9jRdE7D5YNzDAbBxxbiy4/dev-dependencies.json +++ b/_next/data/rKeQK-aFhfc5v06FzUaGU/dev-dependencies.json @@ -1 +1 @@ -{"pageProps":{"post":{"id":"5514a197-e266-4487-a3ce-95ae17f26bdb","date":{"start_date":"2024-05-29"},"type":["Post"],"slug":"dev-dependencies","tags":["Next.js","React","Website"],"summary":"Nextjs迷踪之——我只改了github action中的NODE_ENV=’production’,为什么编译就崩了?","title":"Next.js 踩坑记(2)——开发依赖","status":["Published"],"createdTime":"Wed May 29 2024 08:30:49 GMT+0000 (Coordinated Universal Time)","fullWidth":false,"pageIcon":"😶‍🌫️","pageCover":"/images/page-cover/rijksmuseum_claesz_1628.jpg"},"blockMap":{"block":{"5514a197-e266-4487-a3ce-95ae17f26bdb":{"value":{"id":"5514a197-e266-4487-a3ce-95ae17f26bdb","version":619,"type":"page","properties":{"NX\\Q":[["‣",[["d",{"type":"date","start_date":"2024-05-29"}]]]],"`gQ~":[["Post"]],"d]hq":[["dev-dependencies"]],"sD^m":[["Next.js,React,Website"]],"wz|S":[["Nextjs迷踪之——我只改了github action中的NODE_ENV=’production’,为什么编译就崩了?"]],"title":[["Next.js 踩坑记(2)——开发依赖"]],"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":[["Published"]]},"content":["ff5f5b87-8eb1-4112-b9ce-f17983c53c0c","2b746c5e-a66d-4c07-a6ba-d92162b07e71","f48c6ae3-3f36-4919-9a93-80e905f002da","12e535ae-ba09-48ed-9b4f-fae7ae1b356d","cad2a806-68d4-4b40-b9b5-5c2eadd6dcb4","254f1eb6-6596-4205-b2ee-e0fefdd17653","4f0d1046-a086-401d-9d35-5f47d8945edf","f4367277-45aa-44e7-978d-157045523fff","e9ccf416-41ad-4f73-915c-5caf0c0a208e","acb3272f-f1da-45a1-a05c-e806f95a880f","2bfea135-c3b3-4fe8-a7cc-96a1a224e691","3a536b75-71f8-43dd-a0dd-b7d96c52d7af","ed92dcf0-50b5-4aab-98c6-5bd0e8a3c853","d2aa64ef-f2b4-431f-8adc-ad209b53acdc","4473a062-cc8f-425d-b21f-e74b654aa446","0b2b3f53-6305-42fd-b0f6-b888d19aa07c","33cc31d9-54af-44d5-9206-e24ada8fffd6","e7ff4eb3-2396-4178-9f09-2160f595ddd0","e19ab478-5daf-4de4-9da1-8218c6e49e79","edb2844d-9b3d-427a-a379-876d0ffbbc0d","119fcfa8-95f4-4dce-86b0-d60eb45eec22","8fc75453-2555-4bdd-80c2-7e81157a844a","ae90cdb0-ed40-42ca-8853-921298b6acaf","9af7733c-7ef4-409b-80bc-3aeda451c5a4","7d6de274-281c-4ef8-9df9-606c601e0b84","bb1a9f7a-8591-4b5e-b271-801883ba2e45","dc5197a3-b06e-4b34-88a1-da6bdc3ccf48","f54c30e5-b673-4286-9361-2ebf99692269"],"format":{"page_icon":"😶‍🌫️","page_cover":"/images/page-cover/rijksmuseum_claesz_1628.jpg","page_cover_position":0},"created_time":1716971449443,"last_edited_time":1717039686105,"parent_id":"4126d965-c550-46af-bc34-c038f0103084","parent_table":"collection","alive":true,"file_ids":["eca01f7f-f753-4cb5-ba95-2233e26f85f4"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0eb813c6-179c-43e0-8c12-27cc22341e33":{"value":{"id":"0eb813c6-179c-43e0-8c12-27cc22341e33","version":37,"type":"collection_view_page","view_ids":["1df80a31-46e8-4fcd-b9a3-dde8ded944c9"],"collection_id":"4126d965-c550-46af-bc34-c038f0103084","format":{"block_locked":false,"block_locked_by":"2c0e0b01-f59e-4e03-b7b6-7d706eecada3","collection_pointer":{"id":"4126d965-c550-46af-bc34-c038f0103084","table":"collection","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"},"copied_from_pointer":{"id":"ee99f65a-23ab-44f8-ac80-270122ee8138","table":"block","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"}},"permissions":[{"role":"editor","type":"user_permission","user_id":"4e783237-cc83-440e-9604-bac369009c55"},{"role":"reader","type":"public_permission","added_timestamp":1716963272589}],"created_time":1716962484995,"last_edited_time":1718352944249,"parent_id":"01ff42de-5b53-40d7-a69e-999e3574e640","parent_table":"space","alive":true,"copied_from":"ee99f65a-23ab-44f8-ac80-270122ee8138","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ff5f5b87-8eb1-4112-b9ce-f17983c53c0c":{"value":{"id":"ff5f5b87-8eb1-4112-b9ce-f17983c53c0c","version":23,"type":"sub_header","properties":{"title":[["引言"]]},"created_time":1717039297245,"last_edited_time":1717039299907,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"2b746c5e-a66d-4c07-a6ba-d92162b07e71":{"value":{"id":"2b746c5e-a66d-4c07-a6ba-d92162b07e71","version":289,"type":"text","properties":{"title":[["在写"],["个人作品集",[["a","https://musherm.github.io/Portofolio/"]]],["这个项目时,由于遇到了让人非常恼火的路径问题,于是有了这篇博客"]]},"created_time":1717036606145,"last_edited_time":1717038922490,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f48c6ae3-3f36-4919-9a93-80e905f002da":{"value":{"id":"f48c6ae3-3f36-4919-9a93-80e905f002da","version":10,"type":"bookmark","properties":{"link":[["https://musherm.github.io/nobelium/path-middle"]],"title":[["Next.js 踩坑记(1)——路径体操"]],"description":[["如何愉快的将你的 Nextjs 项目部署上 Github Page?"]]},"format":{"bookmark_icon":"https://musherm.github.io/apple-touch-icon.png","bookmark_cover":"https://og-image-craigary.vercel.app/Next.js%20%E8%B8%A9%E5%9D%91%E8%AE%B0%EF%BC%881%EF%BC%89%E2%80%94%E2%80%94%E8%B7%AF%E5%BE%84%E4%BD%93%E6%93%8D.png?theme=dark&md=1&fontSize=125px&images=https%3A%2F%2Fnobelium.vercel.app%2Flogo-for-dark-bg.svg"},"created_time":1717037336232,"last_edited_time":1717037336232,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"12e535ae-ba09-48ed-9b4f-fae7ae1b356d":{"value":{"id":"12e535ae-ba09-48ed-9b4f-fae7ae1b356d","version":685,"type":"text","properties":{"title":[["这篇博客是在 "],["notion",[["a","https://www.notion.so"]]],[" 上完成写作的(包括现在这篇),再加之我有过了解,有很多项目支持直接从 notion 构建自己的个人博客,作为一个前端开发者,怎么能没有自己的博客呢?于是开始选型,辗转之下找到了这篇文章:"]]},"created_time":1717037330804,"last_edited_time":1717037499376,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"cad2a806-68d4-4b40-b9b5-5c2eadd6dcb4":{"value":{"id":"cad2a806-68d4-4b40-b9b5-5c2eadd6dcb4","version":10,"type":"bookmark","properties":{"link":[["https://emergencyexit.xyz/upgrade-blog"]],"title":[["从 奇思乱想 到 妙想天开"]],"description":[["打怪→获得经验→升级⤴️"]]},"format":{"bookmark_icon":"https://emergencyexit.xyz/apple-touch-icon.png","bookmark_cover":"https://og-image-craigary.vercel.app/%E4%BB%8E%20%E5%A5%87%E6%80%9D%E4%B9%B1%E6%83%B3%20%E5%88%B0%20%E5%A6%99%E6%83%B3%E5%A4%A9%E5%BC%80.png?theme=dark&md=1&fontSize=125px&images=https%3A%2F%2Fnobelium.vercel.app%2Flogo-for-dark-bg.svg"},"created_time":1717037505233,"last_edited_time":1717037505233,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"254f1eb6-6596-4205-b2ee-e0fefdd17653":{"value":{"id":"254f1eb6-6596-4205-b2ee-e0fefdd17653","version":221,"type":"text","properties":{"title":[["作者对各种从 notion 生成博客的项目进行了调研,最终选用了 nobelium 这一项目:"]]},"created_time":1717037387079,"last_edited_time":1717037684557,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4f0d1046-a086-401d-9d35-5f47d8945edf":{"value":{"id":"4f0d1046-a086-401d-9d35-5f47d8945edf","version":10,"type":"bookmark","properties":{"link":[["https://github.com/craigary/nobelium"]],"title":[["GitHub - craigary/nobelium: A static blog build on top of Notion and NextJS, deployed on Vercel."]],"description":[["A static blog build on top of Notion and NextJS, deployed on Vercel. - craigary/nobelium"]]},"format":{"bookmark_icon":"https://github.com/fluidicon.png","bookmark_cover":"https://repository-images.githubusercontent.com/347565905/8cc03300-9313-11eb-9c18-8387e9ede56b"},"created_time":1717039688442,"last_edited_time":1717039695809,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f4367277-45aa-44e7-978d-157045523fff":{"value":{"id":"f4367277-45aa-44e7-978d-157045523fff","version":886,"type":"text","properties":{"title":[["好了,看来烦人的选型工作已经有人替我完成了,话不多说,开整!由于这个项目原型使用的是 Vercel 部署,但本着省钱的原则,作者和我都选择使用 Github Page 进行部署,这就要求我们将项目编译成静态页面,作者对此进行了一定的改造,所以本博客的部署实际上使用了作者改造的项目:"]]},"created_time":1717037511717,"last_edited_time":1717037817644,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e9ccf416-41ad-4f73-915c-5caf0c0a208e":{"value":{"id":"e9ccf416-41ad-4f73-915c-5caf0c0a208e","version":10,"type":"bookmark","properties":{"link":[["https://github.com/IMBlues/nobelium"]],"title":[["GitHub - IMBlues/nobelium: 布鲁斯鱼的妙想天开"]],"description":[["布鲁斯鱼的妙想天开. Contribute to IMBlues/nobelium development by creating an account on GitHub."]]},"format":{"bookmark_icon":"https://github.com/fluidicon.png","bookmark_cover":"https://opengraph.githubassets.com/8f1dd2de2684b8c115d5731226908ffc6b9fba0995d0a48ee3fc81057c200965/IMBlues/nobelium"},"created_time":1717039723194,"last_edited_time":1717039724427,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"acb3272f-f1da-45a1-a05c-e806f95a880f":{"value":{"id":"acb3272f-f1da-45a1-a05c-e806f95a880f","version":246,"type":"text","properties":{"title":[["在根据教程进行了一番操作之后,我们又遇到了那个熟悉的问题:静态资源路径错误!"]]},"created_time":1717037712121,"last_edited_time":1717037866275,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"2bfea135-c3b3-4fe8-a7cc-96a1a224e691":{"value":{"id":"2bfea135-c3b3-4fe8-a7cc-96a1a224e691","version":558,"type":"text","properties":{"title":[["这是什么历史的循环?我因为出现静态资源路径错误,写了"],["一篇博客",[["a","https://musherm.github.io/nobelium/path-middle"]]],["专门介绍怎么解决这个问题,并且顺便部署一个博客把这篇文章放上去,但又在部署博客的过程中又遇到了静态资源报错。。。 😅"]]},"created_time":1717037868850,"last_edited_time":1717037950858,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"3a536b75-71f8-43dd-a0dd-b7d96c52d7af":{"value":{"id":"3a536b75-71f8-43dd-a0dd-b7d96c52d7af","version":340,"type":"text","properties":{"title":[["但是没关系!很幸运,这又是一个 Nextjs 项目,而我又恰巧刚刚学会如何解决,这不是手拿把掐?开整!"]]},"created_time":1717037952549,"last_edited_time":1717038106549,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ed92dcf0-50b5-4aab-98c6-5bd0e8a3c853":{"value":{"id":"ed92dcf0-50b5-4aab-98c6-5bd0e8a3c853","version":45,"type":"sub_header","properties":{"title":[["开始解决问题"]]},"created_time":1717039305296,"last_edited_time":1717039319248,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"d2aa64ef-f2b4-431f-8adc-ad209b53acdc":{"value":{"id":"d2aa64ef-f2b4-431f-8adc-ad209b53acdc","version":104,"type":"text","properties":{"title":[["根据经验,我把nextconfig改成了这样:"]]},"created_time":1717038106836,"last_edited_time":1717038483548,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4473a062-cc8f-425d-b21f-e74b654aa446":{"value":{"id":"4473a062-cc8f-425d-b21f-e74b654aa446","version":33,"type":"code","properties":{"title":[["const isProd = process.env.NODE_ENV === \"production\";\nmodule.exports = {\n basePath: isProd ? \"/nobelium\" : \"\",\n assetPrefix: isProd ? \"/nobelium/\" : \"\",\n webpack5: true,\n ...\n};\n"]],"language":[["JavaScript"]]},"created_time":1717038496430,"last_edited_time":1717038536538,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0b2b3f53-6305-42fd-b0f6-b888d19aa07c":{"value":{"id":"0b2b3f53-6305-42fd-b0f6-b888d19aa07c","version":367,"type":"text","properties":{"title":[["主要就是加了个basePath和assetPath,跟我在 "],["‣",[["lm",{"href":"https://musherm.github.io/nobelium/path-middle","title":"Next.js 踩坑记(1)——路径体操","icon_url":"https://musherm.github.io/apple-touch-icon.png","link_author":"Musher","thumbnail_url":"https://og-image-craigary.vercel.app/Next.js%20%E8%B8%A9%E5%9D%91%E8%AE%B0%EF%BC%881%EF%BC%89%E2%80%94%E2%80%94%E8%B7%AF%E5%BE%84%E4%BD%93%E6%93%8D.png?theme=dark&md=1&fontSize=125px&images=https%3A%2F%2Fnobelium.vercel.app%2Flogo-for-dark-bg.svg"}]]],[" 这篇文章里提到的一样,还需要在编译的过程中提供一个NODE_ENV=’production’,就像这样:"]]},"created_time":1717038483712,"last_edited_time":1717038632897,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"33cc31d9-54af-44d5-9206-e24ada8fffd6":{"value":{"id":"33cc31d9-54af-44d5-9206-e24ada8fffd6","version":43,"type":"code","properties":{"title":[["- name: Build\n run: |\n npm i --registry https://registry.npmmirror.com --legacy-peer-deps -d \n yarn build\n yarn export\n env:\n NODE_ENV: production"]],"language":[["YAML"]]},"created_time":1717038633112,"last_edited_time":1717038648967,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e7ff4eb3-2396-4178-9f09-2160f595ddd0":{"value":{"id":"e7ff4eb3-2396-4178-9f09-2160f595ddd0","version":645,"type":"text","properties":{"title":[["这一改,完了,Github 服务端编译不通过了,最致命的是,我在本地编译能通过,到底是哪一个环节出了问题?"]]},"created_time":1717038589963,"last_edited_time":1717039343683,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e19ab478-5daf-4de4-9da1-8218c6e49e79":{"value":{"id":"e19ab478-5daf-4de4-9da1-8218c6e49e79","version":34,"type":"sub_header","properties":{"title":[["问题定位"]]},"created_time":1717039344051,"last_edited_time":1717039348738,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"edb2844d-9b3d-427a-a379-876d0ffbbc0d":{"value":{"id":"edb2844d-9b3d-427a-a379-876d0ffbbc0d","version":8,"type":"text","properties":{"title":[["我决定通过分步骤更改的方式来测试哪一步造成了影响,最终定位在修改 NODE_ENV 这一环节,修改后仔细查看 build 错误信息如下:"]]},"created_time":1717039343683,"last_edited_time":1717039345858,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"119fcfa8-95f4-4dce-86b0-d60eb45eec22":{"value":{"id":"119fcfa8-95f4-4dce-86b0-d60eb45eec22","version":6,"type":"code","properties":{"title":[["./node_modules/gitalk/dist/gitalk.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[2].oneOf[7].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[2].oneOf[7].use[2]!./node_modules/gitalk/dist/gitalk.css\nError: Cannot find module 'tailwindcss'\nRequire stack:\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/index.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/index.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack-config.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/index.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/cli/next-build.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/bin/next\n at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)\n at mod._resolveFilename (/home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/require-hook.js:183:28)\n at Function.resolve (node:internal/modules/cjs/helpers:116:19)\n at loadPlugin (/home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js:49:32)\n at /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js:162:56\n at Array.map ()\n at Object.getPostCssPlugins (/home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js:162:47)\n at async /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/index.js:99:36"]],"language":[["YAML"]]},"format":{"copied_from_pointer":{"id":"451463f2-1475-4700-b399-722d5c0d0485","table":"block","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"}},"created_time":1717038837789,"last_edited_time":1717039197481,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"copied_from":"451463f2-1475-4700-b399-722d5c0d0485","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"8fc75453-2555-4bdd-80c2-7e81157a844a":{"value":{"id":"8fc75453-2555-4bdd-80c2-7e81157a844a","version":593,"type":"text","properties":{"title":[["就是一堆模块找不到的问题,此时的我百思不得其解,我只是更改了一个环境变量,为什么会导致模块找不到呢?我把这个问题拿去问 GPT,GPT回复的答案仿佛醍醐灌顶,帮我彻底解决了这一问题,也就是本文的标题——"],["开发依赖。",[["b"]]]]},"created_time":1717038844610,"last_edited_time":1717038918576,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ae90cdb0-ed40-42ca-8853-921298b6acaf":{"value":{"id":"ae90cdb0-ed40-42ca-8853-921298b6acaf","version":83,"type":"text","properties":{"title":[["查看 package.json 可得:"]]},"created_time":1717038963846,"last_edited_time":1717039032798,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"9af7733c-7ef4-409b-80bc-3aeda451c5a4":{"value":{"id":"9af7733c-7ef4-409b-80bc-3aeda451c5a4","version":19,"type":"code","properties":{"title":[["{\n \"name\": \"nobelium\",\n \"version\": \"1.3.0\",\n \"homepage\": \"https://nobelium.js.org\",\n \"license\": \"MIT\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/craigary/nobelium.git\"\n },\n \"author\": {\n \"name\": \"Craig Hart\",\n \"email\": \"i@craigary.net\",\n \"url\": \"http://craigary.net\"\n },\n \"scripts\": {\n \"dev\": \"next dev\",\n \"build\": \"next build && node ./.next/server/scripts/generate-rss.js\",\n \"export\": \"next export\",\n \"start\": \"next start\",\n \"lint\": \"next lint\",\n \"postbuild\": \"next-sitemap --config next-sitemap.config.js\"\n },\n \"dependencies\": {\n \"axios\": \">=0.21.1\",\n \"feed\": \"^4.2.2\",\n \"gitalk\": \"^1.7.2\",\n \"next\": \"^12.1.0\",\n \"notion-client\": \"^4.10.0\",\n \"notion-utils\": \"^4.10.0\",\n \"preact\": \"^10.5.15\",\n \"react\": \"^17.0.2\",\n \"react-cusdis\": \"^2.0.1\",\n \"react-dom\": \"^17.0.2\",\n \"react-notion-x\": \"^4.11.0\",\n \"use-ackee\": \"^3.0.0\"\n },\n \"devDependencies\": {\n \"autoprefixer\": \"^10.4.0\",\n \"eslint\": \"<8.0.0\",\n \"eslint-config-next\": \"^12.0.3\",\n \"eslint-config-standard\": \"^16.0.2\",\n \"eslint-plugin-import\": \"^2.25.2\",\n \"eslint-plugin-node\": \"^11.1.0\",\n \"eslint-plugin-promise\": \"^5.1.1\",\n \"eslint-plugin-react\": \"^7.26.1\",\n \"next-sitemap\": \"^1.6.203\",\n \"postcss\": \"^8.3.11\",\n \"tailwindcss\": \"^2.2.19\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/craigary/nobelium/issues\",\n \"email\": \"i@craigary.net\"\n }\n}"]],"language":[["JSON"]]},"created_time":1717039033041,"last_edited_time":1717039037080,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"7d6de274-281c-4ef8-9df9-606c601e0b84":{"value":{"id":"7d6de274-281c-4ef8-9df9-606c601e0b84","version":633,"type":"text","properties":{"title":[["我突然发现,原来报错里找不到的tailwindcss被标记成了开发依赖!当我在NODE_ENV里指定环境为生产环境时,就不会安装这个包,从而导致编译错误!解决的办法也很简单,把这几个包都挪到dependencies里就行了。"]]},"created_time":1717039205048,"last_edited_time":1717039357474,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"bb1a9f7a-8591-4b5e-b271-801883ba2e45":{"value":{"id":"bb1a9f7a-8591-4b5e-b271-801883ba2e45","version":23,"type":"sub_header","properties":{"title":[["总结"]]},"created_time":1717039359448,"last_edited_time":1717039361489,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"dc5197a3-b06e-4b34-88a1-da6bdc3ccf48":{"value":{"id":"dc5197a3-b06e-4b34-88a1-da6bdc3ccf48","version":777,"type":"text","properties":{"title":[["这次的问题主要还是拿来主义在作祟,本来项目就是傻瓜式的,我能拿来直接用,部署步骤里面也没写我要改package.json,我为什么要关注这个呢?所以我自然也不会知道有些东西被标记成了开发依赖(我在此之前甚至不知道有这个东西)"]]},"created_time":1717039362193,"last_edited_time":1717039464643,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f54c30e5-b673-4286-9361-2ebf99692269":{"value":{"id":"f54c30e5-b673-4286-9361-2ebf99692269","version":357,"type":"text","properties":{"title":[["至于成果展示嘛,你现在看到的这篇博客,就是我部署的博客了,如果你看到这里,wish you have a good day!"]]},"created_time":1717039472810,"last_edited_time":1717039524574,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"collection":{"4126d965-c550-46af-bc34-c038f0103084":{"value":{"id":"4126d965-c550-46af-bc34-c038f0103084","version":7,"name":[["NOBELIUM Template"]],"schema":{"NX\\Q":{"name":"date","type":"date","description":""},"`gQ~":{"name":"type","type":"select","options":[{"id":"5aff2f95-fd1e-489b-8840-bf10bc9519cb","color":"purple","value":"Post"},{"id":"374d2bc6-a144-4832-8ca4-474aaae0ea1f","color":"orange","value":"Page"}]},"d]hq":{"name":"slug","type":"text"},"sD^m":{"name":"tags","type":"multi_select","options":[{"id":"b67fb051-ddd9-43b5-9fdf-7b7f97a2e056","color":"yellow","value":"Jekyll"},{"id":"2382b30f-9881-4a8b-ae7f-2d34979c4fb9","color":"pink","value":"Website"},{"id":"674b2636-c585-4057-8a6d-0d6ab9718f90","color":"blue","value":"Cooking"},{"id":"499d31ac-26f2-4fed-9ec4-17afe3c6d90d","color":"red","value":"Sociology"},{"id":"38611f8e-ab81-4a71-8d40-7bad1370b26a","color":"orange","value":"TEMP"},{"id":"1ad9233c-079a-44c7-98c3-24ed2faf1879","color":"purple","value":"Book"},{"id":"a3d8eb51-77ce-4e83-a9ae-68da9cee63fa","color":"default","value":"Design"},{"id":"87df7c95-06f0-477a-a530-14be415a1dcf","color":"gray","value":"React"},{"id":"76cb8fea-49e8-47c1-a982-b3a8a23d2278","color":"green","value":"Next.js"},{"id":"63e95905-41f5-4027-8bd4-330129476432","color":"brown","value":"TODO"},{"id":"6dbab06e-0532-484d-9c94-9be429b2abf8","color":"red","value":"Nobelium"},{"id":"a7dda041-f452-423c-b00f-dbe7402400ca","color":"pink","value":"JavaScript"}]},"wz|S":{"name":"summary","type":"text"},"title":{"name":"title","type":"title"},"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":{"name":"status","type":"select","options":[{"id":"22460321-fea2-4c7c-b352-a674760780ac","color":"orange","value":"Idea"},{"id":"41d5f5c6-b53c-42bc-8e0f-fc9402048480","color":"yellow","value":"Draft"},{"id":"c7390b31-9fab-4e21-94ee-7e67ea077a97","color":"blue","value":"Revise"},{"id":"7abc61d4-b405-480d-b699-12588755fa65","color":"red","value":"Published"}]}},"icon":"🎟️","format":{"copied_from_pointer":{"id":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","table":"collection","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"},"collection_page_properties":[{"visible":false,"property":"NX\\Q"},{"visible":false,"property":"d]hq"},{"visible":false,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"visible":false,"property":"sD^m"},{"visible":false,"property":"wz|S"},{"visible":false,"property":"`gQ~"}]},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"file_ids":["6cf3dc36-2f98-4f0e-9679-1bdbb1485129","5520bd92-e709-4c0d-ad58-06923f23f7e9","624d393a-62e3-4464-a1bf-1c79ecd4fbda","d52f6766-3e32-4c3d-8529-46e1f214360f"],"copied_from":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","migrated":true,"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"collection_view":{"1df80a31-46e8-4fcd-b9a3-dde8ded944c9":{"value":{"id":"1df80a31-46e8-4fcd-b9a3-dde8ded944c9","version":11,"type":"table","name":"Default view","format":{"table_wrap":false,"table_properties":[{"width":416,"visible":true,"property":"title"},{"width":186,"visible":true,"property":"d]hq"},{"width":145,"visible":true,"property":"NX\\Q"},{"width":147,"visible":true,"property":"wz|S"},{"width":222,"visible":true,"property":"sD^m"},{"width":124,"visible":true,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"width":100,"visible":true,"property":"`gQ~"}],"table_frozen_column_index":-1},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"page_sort":["b1e1d645-db95-42e5-8995-39a80eda6460","e8cd3732-dc1c-43ae-959a-a5a611ec098a","e876558d-e878-47f6-8c95-21be678990a5","5a971ded-d3c5-41be-bef9-ddfff48d43a2","8db8b240-e1c5-4dd7-bf74-72584d7a2ce0","daf94ca4-ec56-47a3-84ed-b1e2479acc4b","d1a2db9b-6820-421e-9b80-017ce7478587","67ea9f83-b9f6-416b-afcb-7c64f7533e6c","45939470-9819-47e8-b12b-999cfefa0aad","c60dc33d-8efb-44be-a863-7a87ad047932","fe4b8d5f-7c49-42c6-a7d5-1cb71c4f7e86","b7233a67-c367-4198-831e-f12089568d1f","4f3bf306-92c4-41b7-a43e-957129a1240a","6a789607-66cf-498e-9b32-eb3fa69a84f4","c9429034-dabd-4a25-8782-97f20c808a60","38c49fe2-37f8-4a7f-a99f-9edb9ddad4c2","474eb638-9f6b-46bf-8004-77668293f199","81d6dfab-69cb-43a0-aa04-e9725f0b67e1","7703d956-84db-46cd-b538-48eae1af68b5","9f937c73-dac9-4ed7-9b01-beefcb321f16","3cf9dcb9-e7db-406c-80ab-c65c11fbf906","5827ab53-e051-455b-b90a-3bdc20158c2c","fa7acd3b-dea9-4fb1-b859-5345f35163c6","696dfc48-62c3-494d-96d0-ec5fa84637e8","79df93cf-9b10-452e-bc62-f39e8cd2d124","9bb8e52d-c459-4528-b1b3-c2378207253a","5da038ef-f419-4a11-aa48-587b3787e040","b4a2c9d4-6a2c-49e6-988d-89a538dfe0f6","c374a479-5cc7-4c54-ba69-6a4d76dc25ad","d470fa67-0e7c-40d8-86ac-9b5a8be88dc8","986be38b-9780-4bb9-bdcd-4e361ddbd888","b7613f56-c2d4-4aae-b967-b7471ade86d0","e357d1fc-7466-4d6a-8d48-71b76ea97cdc","e1735855-4089-4af6-bd4d-0d59f7a76cb4","9b34581a-955a-4229-99d0-8f2a6d0e69ce","b4414811-0599-45cf-b047-fa95eac42d89","c28a8a01-911a-40a2-a607-d3af8cb24017","461d07ae-4b4a-49de-bdcb-341af1153201","3df59023-cb68-4a65-afd1-7f0b8c21cb57","0e3223d1-03df-40fb-90f9-cc8559d776b5","4f45b7d6-cd5b-46ab-b2a6-37ae20bf5f21","fa475a21-5f38-43d4-9a89-67c40b3129ae","97cbc634-fe3a-4b9b-9da6-ac4aaa94772f","8a0d34bc-7e8c-4a68-88a5-5276274f612a","623f8788-a20f-45fd-bb82-08935f59b44d","7ee398f0-450b-47cb-9b53-f5e7736590d2","eae9f077-591e-4841-903b-db395513c834","367d0f2a-0b10-4dbb-b53a-613152f124f9","398e2e28-3997-49bc-a138-0467d4da8531","8aaf4633-e879-44dc-82c8-3c9fb9d3a6f8","1eb5e5f2-8dc9-4ffc-b5e1-09b67be27a83","83465fb9-205b-41fc-83a6-424692ee0a0e","fb1d18d0-6403-4e8a-840e-134553748ff5","4407cb77-3838-4ba5-b474-f15222cd3dba","1880b0f2-e036-42d0-9550-0fb08a962397","d8d60bd6-33f6-458f-a7d6-209ef2fb05a1","29bf65ff-888b-4a76-a8dd-bf54f02c3864","bad1d4ae-fd4a-4671-ae94-dd53d94e0eae","0d59792d-db1c-4ae7-8d7c-4f013be40dcf","337dc259-2805-4b1c-a60f-1b3e6c7badb8","4b1b21a8-c278-4bc6-88f1-1a35d407f4d7","7946aba2-d6d0-45ef-8779-23fa15db8f2d","c18dbce6-9e8c-4f4b-b74a-0994e7c1bc3f","84aa87b7-39e7-493c-87b9-5cae4de95449","1446eadb-8c01-4295-be3a-ecf19361c143","fe8a7d94-e9ba-457d-8f19-10fe53e6ca3c","98a5a0b6-b07b-4065-a73f-2949ad28ac47","6efcebe0-a779-4ec2-a1cb-f77acbb36bf6","c62e81a1-03a9-4b5c-9a55-4e56867de3e4","5514a197-e266-4487-a3ce-95ae17f26bdb","51f3b1a2-a3d5-468a-b552-70d7b0c1a9cb","baacb561-6a62-4343-9e6a-bc1bba469a9c","9ca0671d-b580-4105-825c-d8ef4c531d84","d11cc5a5-b975-4a3a-9d78-739e3680b3fa","98540d41-1879-4bea-9bdf-fa17af5cc06e","f24edd31-035d-4744-9275-118e8751f2f9","975051d4-ebbc-4b3f-98cf-1a52e5e4761d","e5d98bee-b2d5-4b45-ab0b-b77da24aebe7","acac2668-1062-4e7a-b095-eda067da8413","179025c4-d8a8-4c47-b621-9fd6a6f3339b","d256e5ed-5eac-43bb-a32e-581774962c23","59520f7f-1fe9-4c70-b059-8655b93e85df","5692c8b3-efa6-4f19-ab2e-4574afc33f46","9c40a253-b9e8-42cd-8a99-62aaa9789a5e","fd348e41-3e72-42d2-8425-be67e8586a28","3128120c-366d-4937-a28a-f18a446f249b","a1d00689-b6f7-418b-888e-0b47edc21286","090eeb36-6c03-462f-9ada-d544c584641f","e97e229c-7a7c-4ce6-81f7-2cf8700e22ab","926771d9-3aab-4640-8dec-b1202f54aa69","b9a5c48f-1b00-4ae9-94bc-f683d6b393ad","30602d25-a696-40ee-b0fa-c252403391cf","a5da67e2-2ac7-4c3a-8833-50d78f853f9b","cf2532d2-7c86-4027-ae70-a81784ff4769","c1e63240-b7fe-4e0e-b753-78a9210b7779","81581b92-d191-4010-8c4f-e2c0e0b4a4ee","69e2cb5f-2c4a-408a-95b5-9d03f8ccfab3","b5b9b1d9-377b-4053-b110-988a9ec54af7","9a223272-0900-4cc3-a503-2515824da515","7c88ce0f-c4be-4335-abfe-adaaa2c6c99e","79bf7035-9dfd-4193-b7d1-cd578a30ac85","a453aa9d-324d-448f-94f0-c8adb4692241","1030c439-2997-45a7-90ca-f2df5de62e3e","1235234b-cfee-4611-8a9b-c6b32b379585","710ff2f6-c05e-4403-b72a-512bb27ab51f","019d0c55-59ee-4247-90c8-5f9017c37ba5","d105e4c2-dfdb-4c58-b8f5-54e182894431","95585600-97d8-4d2c-bf0c-6b9164dbee54","51e53e64-e6dd-4fd6-8062-5d4455f0a1cb","f4ec684b-e5f1-44e9-a8a7-aca27f7ca6f3","177fa228-9099-4dd5-8969-c67f9c78bd0c","d5ab0d7a-0123-473f-84d4-81740defb9b4","548f6d36-c509-4b79-9c4b-59f227c7f550","c0901673-4f5e-4e51-ad87-0217f2d33a0c","0787f8d6-dc99-47c6-946e-2b008814bebc","0ade5216-1103-486a-aff0-a709ff825b02","a2c4dd21-985c-497d-b421-c2d8a9ec0eeb","908a498c-f7e3-4668-8afd-f179a027b4d9","4945e5c3-033d-467c-a8b3-b1479c1fdf0a","854f4584-28d5-43bd-938e-88d0957c78e3","6a6574f8-d63d-4fed-99c5-38f3df0364ac"],"query2":{"filter":{"operator":"and"},"aggregations":[{"property":"title","aggregator":"count"}]},"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"space":{},"notion_user":{},"collection_query":{},"signed_urls":{}},"emailHash":"568c024e516219d57a6ef037a7cc3d32"},"__N_SSG":true} \ No newline at end of file +{"pageProps":{"post":{"id":"5514a197-e266-4487-a3ce-95ae17f26bdb","date":{"start_date":"2024-05-29"},"type":["Post"],"slug":"dev-dependencies","tags":["Next.js","React","Website"],"summary":"Nextjs迷踪之——我只改了github action中的NODE_ENV=’production’,为什么编译就崩了?","title":"Next.js 踩坑记(2)——开发依赖","status":["Published"],"createdTime":"Wed May 29 2024 08:30:49 GMT+0000 (Coordinated Universal Time)","fullWidth":false,"pageIcon":"😶‍🌫️","pageCover":"/images/page-cover/rijksmuseum_claesz_1628.jpg"},"blockMap":{"block":{"5514a197-e266-4487-a3ce-95ae17f26bdb":{"value":{"id":"5514a197-e266-4487-a3ce-95ae17f26bdb","version":619,"type":"page","properties":{"NX\\Q":[["‣",[["d",{"type":"date","start_date":"2024-05-29"}]]]],"`gQ~":[["Post"]],"d]hq":[["dev-dependencies"]],"sD^m":[["Next.js,React,Website"]],"wz|S":[["Nextjs迷踪之——我只改了github action中的NODE_ENV=’production’,为什么编译就崩了?"]],"title":[["Next.js 踩坑记(2)——开发依赖"]],"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":[["Published"]]},"content":["ff5f5b87-8eb1-4112-b9ce-f17983c53c0c","2b746c5e-a66d-4c07-a6ba-d92162b07e71","f48c6ae3-3f36-4919-9a93-80e905f002da","12e535ae-ba09-48ed-9b4f-fae7ae1b356d","cad2a806-68d4-4b40-b9b5-5c2eadd6dcb4","254f1eb6-6596-4205-b2ee-e0fefdd17653","4f0d1046-a086-401d-9d35-5f47d8945edf","f4367277-45aa-44e7-978d-157045523fff","e9ccf416-41ad-4f73-915c-5caf0c0a208e","acb3272f-f1da-45a1-a05c-e806f95a880f","2bfea135-c3b3-4fe8-a7cc-96a1a224e691","3a536b75-71f8-43dd-a0dd-b7d96c52d7af","ed92dcf0-50b5-4aab-98c6-5bd0e8a3c853","d2aa64ef-f2b4-431f-8adc-ad209b53acdc","4473a062-cc8f-425d-b21f-e74b654aa446","0b2b3f53-6305-42fd-b0f6-b888d19aa07c","33cc31d9-54af-44d5-9206-e24ada8fffd6","e7ff4eb3-2396-4178-9f09-2160f595ddd0","e19ab478-5daf-4de4-9da1-8218c6e49e79","edb2844d-9b3d-427a-a379-876d0ffbbc0d","119fcfa8-95f4-4dce-86b0-d60eb45eec22","8fc75453-2555-4bdd-80c2-7e81157a844a","ae90cdb0-ed40-42ca-8853-921298b6acaf","9af7733c-7ef4-409b-80bc-3aeda451c5a4","7d6de274-281c-4ef8-9df9-606c601e0b84","bb1a9f7a-8591-4b5e-b271-801883ba2e45","dc5197a3-b06e-4b34-88a1-da6bdc3ccf48","f54c30e5-b673-4286-9361-2ebf99692269"],"format":{"page_icon":"😶‍🌫️","page_cover":"/images/page-cover/rijksmuseum_claesz_1628.jpg","page_cover_position":0},"created_time":1716971449443,"last_edited_time":1717039686105,"parent_id":"4126d965-c550-46af-bc34-c038f0103084","parent_table":"collection","alive":true,"file_ids":["eca01f7f-f753-4cb5-ba95-2233e26f85f4"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0eb813c6-179c-43e0-8c12-27cc22341e33":{"value":{"id":"0eb813c6-179c-43e0-8c12-27cc22341e33","version":37,"type":"collection_view_page","view_ids":["1df80a31-46e8-4fcd-b9a3-dde8ded944c9"],"collection_id":"4126d965-c550-46af-bc34-c038f0103084","format":{"block_locked":false,"block_locked_by":"2c0e0b01-f59e-4e03-b7b6-7d706eecada3","collection_pointer":{"id":"4126d965-c550-46af-bc34-c038f0103084","table":"collection","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"},"copied_from_pointer":{"id":"ee99f65a-23ab-44f8-ac80-270122ee8138","table":"block","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"}},"permissions":[{"role":"editor","type":"user_permission","user_id":"4e783237-cc83-440e-9604-bac369009c55"},{"role":"reader","type":"public_permission","added_timestamp":1716963272589}],"created_time":1716962484995,"last_edited_time":1718352944249,"parent_id":"01ff42de-5b53-40d7-a69e-999e3574e640","parent_table":"space","alive":true,"copied_from":"ee99f65a-23ab-44f8-ac80-270122ee8138","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ff5f5b87-8eb1-4112-b9ce-f17983c53c0c":{"value":{"id":"ff5f5b87-8eb1-4112-b9ce-f17983c53c0c","version":23,"type":"sub_header","properties":{"title":[["引言"]]},"created_time":1717039297245,"last_edited_time":1717039299907,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"2b746c5e-a66d-4c07-a6ba-d92162b07e71":{"value":{"id":"2b746c5e-a66d-4c07-a6ba-d92162b07e71","version":289,"type":"text","properties":{"title":[["在写"],["个人作品集",[["a","https://musherm.github.io/Portofolio/"]]],["这个项目时,由于遇到了让人非常恼火的路径问题,于是有了这篇博客"]]},"created_time":1717036606145,"last_edited_time":1717038922490,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f48c6ae3-3f36-4919-9a93-80e905f002da":{"value":{"id":"f48c6ae3-3f36-4919-9a93-80e905f002da","version":10,"type":"bookmark","properties":{"link":[["https://musherm.github.io/nobelium/path-middle"]],"title":[["Next.js 踩坑记(1)——路径体操"]],"description":[["如何愉快的将你的 Nextjs 项目部署上 Github Page?"]]},"format":{"bookmark_icon":"https://musherm.github.io/apple-touch-icon.png","bookmark_cover":"https://og-image-craigary.vercel.app/Next.js%20%E8%B8%A9%E5%9D%91%E8%AE%B0%EF%BC%881%EF%BC%89%E2%80%94%E2%80%94%E8%B7%AF%E5%BE%84%E4%BD%93%E6%93%8D.png?theme=dark&md=1&fontSize=125px&images=https%3A%2F%2Fnobelium.vercel.app%2Flogo-for-dark-bg.svg"},"created_time":1717037336232,"last_edited_time":1717037336232,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"12e535ae-ba09-48ed-9b4f-fae7ae1b356d":{"value":{"id":"12e535ae-ba09-48ed-9b4f-fae7ae1b356d","version":685,"type":"text","properties":{"title":[["这篇博客是在 "],["notion",[["a","https://www.notion.so"]]],[" 上完成写作的(包括现在这篇),再加之我有过了解,有很多项目支持直接从 notion 构建自己的个人博客,作为一个前端开发者,怎么能没有自己的博客呢?于是开始选型,辗转之下找到了这篇文章:"]]},"created_time":1717037330804,"last_edited_time":1717037499376,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"cad2a806-68d4-4b40-b9b5-5c2eadd6dcb4":{"value":{"id":"cad2a806-68d4-4b40-b9b5-5c2eadd6dcb4","version":10,"type":"bookmark","properties":{"link":[["https://emergencyexit.xyz/upgrade-blog"]],"title":[["从 奇思乱想 到 妙想天开"]],"description":[["打怪→获得经验→升级⤴️"]]},"format":{"bookmark_icon":"https://emergencyexit.xyz/apple-touch-icon.png","bookmark_cover":"https://og-image-craigary.vercel.app/%E4%BB%8E%20%E5%A5%87%E6%80%9D%E4%B9%B1%E6%83%B3%20%E5%88%B0%20%E5%A6%99%E6%83%B3%E5%A4%A9%E5%BC%80.png?theme=dark&md=1&fontSize=125px&images=https%3A%2F%2Fnobelium.vercel.app%2Flogo-for-dark-bg.svg"},"created_time":1717037505233,"last_edited_time":1717037505233,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"254f1eb6-6596-4205-b2ee-e0fefdd17653":{"value":{"id":"254f1eb6-6596-4205-b2ee-e0fefdd17653","version":221,"type":"text","properties":{"title":[["作者对各种从 notion 生成博客的项目进行了调研,最终选用了 nobelium 这一项目:"]]},"created_time":1717037387079,"last_edited_time":1717037684557,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4f0d1046-a086-401d-9d35-5f47d8945edf":{"value":{"id":"4f0d1046-a086-401d-9d35-5f47d8945edf","version":10,"type":"bookmark","properties":{"link":[["https://github.com/craigary/nobelium"]],"title":[["GitHub - craigary/nobelium: A static blog build on top of Notion and NextJS, deployed on Vercel."]],"description":[["A static blog build on top of Notion and NextJS, deployed on Vercel. - craigary/nobelium"]]},"format":{"bookmark_icon":"https://github.com/fluidicon.png","bookmark_cover":"https://repository-images.githubusercontent.com/347565905/8cc03300-9313-11eb-9c18-8387e9ede56b"},"created_time":1717039688442,"last_edited_time":1717039695809,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f4367277-45aa-44e7-978d-157045523fff":{"value":{"id":"f4367277-45aa-44e7-978d-157045523fff","version":886,"type":"text","properties":{"title":[["好了,看来烦人的选型工作已经有人替我完成了,话不多说,开整!由于这个项目原型使用的是 Vercel 部署,但本着省钱的原则,作者和我都选择使用 Github Page 进行部署,这就要求我们将项目编译成静态页面,作者对此进行了一定的改造,所以本博客的部署实际上使用了作者改造的项目:"]]},"created_time":1717037511717,"last_edited_time":1717037817644,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e9ccf416-41ad-4f73-915c-5caf0c0a208e":{"value":{"id":"e9ccf416-41ad-4f73-915c-5caf0c0a208e","version":10,"type":"bookmark","properties":{"link":[["https://github.com/IMBlues/nobelium"]],"title":[["GitHub - IMBlues/nobelium: 布鲁斯鱼的妙想天开"]],"description":[["布鲁斯鱼的妙想天开. Contribute to IMBlues/nobelium development by creating an account on GitHub."]]},"format":{"bookmark_icon":"https://github.com/fluidicon.png","bookmark_cover":"https://opengraph.githubassets.com/8f1dd2de2684b8c115d5731226908ffc6b9fba0995d0a48ee3fc81057c200965/IMBlues/nobelium"},"created_time":1717039723194,"last_edited_time":1717039724427,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"acb3272f-f1da-45a1-a05c-e806f95a880f":{"value":{"id":"acb3272f-f1da-45a1-a05c-e806f95a880f","version":246,"type":"text","properties":{"title":[["在根据教程进行了一番操作之后,我们又遇到了那个熟悉的问题:静态资源路径错误!"]]},"created_time":1717037712121,"last_edited_time":1717037866275,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"2bfea135-c3b3-4fe8-a7cc-96a1a224e691":{"value":{"id":"2bfea135-c3b3-4fe8-a7cc-96a1a224e691","version":558,"type":"text","properties":{"title":[["这是什么历史的循环?我因为出现静态资源路径错误,写了"],["一篇博客",[["a","https://musherm.github.io/nobelium/path-middle"]]],["专门介绍怎么解决这个问题,并且顺便部署一个博客把这篇文章放上去,但又在部署博客的过程中又遇到了静态资源报错。。。 😅"]]},"created_time":1717037868850,"last_edited_time":1717037950858,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"3a536b75-71f8-43dd-a0dd-b7d96c52d7af":{"value":{"id":"3a536b75-71f8-43dd-a0dd-b7d96c52d7af","version":340,"type":"text","properties":{"title":[["但是没关系!很幸运,这又是一个 Nextjs 项目,而我又恰巧刚刚学会如何解决,这不是手拿把掐?开整!"]]},"created_time":1717037952549,"last_edited_time":1717038106549,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ed92dcf0-50b5-4aab-98c6-5bd0e8a3c853":{"value":{"id":"ed92dcf0-50b5-4aab-98c6-5bd0e8a3c853","version":45,"type":"sub_header","properties":{"title":[["开始解决问题"]]},"created_time":1717039305296,"last_edited_time":1717039319248,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"d2aa64ef-f2b4-431f-8adc-ad209b53acdc":{"value":{"id":"d2aa64ef-f2b4-431f-8adc-ad209b53acdc","version":104,"type":"text","properties":{"title":[["根据经验,我把nextconfig改成了这样:"]]},"created_time":1717038106836,"last_edited_time":1717038483548,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4473a062-cc8f-425d-b21f-e74b654aa446":{"value":{"id":"4473a062-cc8f-425d-b21f-e74b654aa446","version":33,"type":"code","properties":{"title":[["const isProd = process.env.NODE_ENV === \"production\";\nmodule.exports = {\n basePath: isProd ? \"/nobelium\" : \"\",\n assetPrefix: isProd ? \"/nobelium/\" : \"\",\n webpack5: true,\n ...\n};\n"]],"language":[["JavaScript"]]},"created_time":1717038496430,"last_edited_time":1717038536538,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0b2b3f53-6305-42fd-b0f6-b888d19aa07c":{"value":{"id":"0b2b3f53-6305-42fd-b0f6-b888d19aa07c","version":367,"type":"text","properties":{"title":[["主要就是加了个basePath和assetPath,跟我在 "],["‣",[["lm",{"href":"https://musherm.github.io/nobelium/path-middle","title":"Next.js 踩坑记(1)——路径体操","icon_url":"https://musherm.github.io/apple-touch-icon.png","link_author":"Musher","thumbnail_url":"https://og-image-craigary.vercel.app/Next.js%20%E8%B8%A9%E5%9D%91%E8%AE%B0%EF%BC%881%EF%BC%89%E2%80%94%E2%80%94%E8%B7%AF%E5%BE%84%E4%BD%93%E6%93%8D.png?theme=dark&md=1&fontSize=125px&images=https%3A%2F%2Fnobelium.vercel.app%2Flogo-for-dark-bg.svg"}]]],[" 这篇文章里提到的一样,还需要在编译的过程中提供一个NODE_ENV=’production’,就像这样:"]]},"created_time":1717038483712,"last_edited_time":1717038632897,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"33cc31d9-54af-44d5-9206-e24ada8fffd6":{"value":{"id":"33cc31d9-54af-44d5-9206-e24ada8fffd6","version":43,"type":"code","properties":{"title":[["- name: Build\n run: |\n npm i --registry https://registry.npmmirror.com --legacy-peer-deps -d \n yarn build\n yarn export\n env:\n NODE_ENV: production"]],"language":[["YAML"]]},"created_time":1717038633112,"last_edited_time":1717038648967,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e7ff4eb3-2396-4178-9f09-2160f595ddd0":{"value":{"id":"e7ff4eb3-2396-4178-9f09-2160f595ddd0","version":645,"type":"text","properties":{"title":[["这一改,完了,Github 服务端编译不通过了,最致命的是,我在本地编译能通过,到底是哪一个环节出了问题?"]]},"created_time":1717038589963,"last_edited_time":1717039343683,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e19ab478-5daf-4de4-9da1-8218c6e49e79":{"value":{"id":"e19ab478-5daf-4de4-9da1-8218c6e49e79","version":34,"type":"sub_header","properties":{"title":[["问题定位"]]},"created_time":1717039344051,"last_edited_time":1717039348738,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"edb2844d-9b3d-427a-a379-876d0ffbbc0d":{"value":{"id":"edb2844d-9b3d-427a-a379-876d0ffbbc0d","version":8,"type":"text","properties":{"title":[["我决定通过分步骤更改的方式来测试哪一步造成了影响,最终定位在修改 NODE_ENV 这一环节,修改后仔细查看 build 错误信息如下:"]]},"created_time":1717039343683,"last_edited_time":1717039345858,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"119fcfa8-95f4-4dce-86b0-d60eb45eec22":{"value":{"id":"119fcfa8-95f4-4dce-86b0-d60eb45eec22","version":6,"type":"code","properties":{"title":[["./node_modules/gitalk/dist/gitalk.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[2].oneOf[7].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[2].oneOf[7].use[2]!./node_modules/gitalk/dist/gitalk.css\nError: Cannot find module 'tailwindcss'\nRequire stack:\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/index.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/index.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack-config.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/index.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/cli/next-build.js\n- /home/runner/work/nobelium/nobelium/node_modules/next/dist/bin/next\n at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)\n at mod._resolveFilename (/home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/require-hook.js:183:28)\n at Function.resolve (node:internal/modules/cjs/helpers:116:19)\n at loadPlugin (/home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js:49:32)\n at /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js:162:56\n at Array.map ()\n at Object.getPostCssPlugins (/home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js:162:47)\n at async /home/runner/work/nobelium/nobelium/node_modules/next/dist/build/webpack/config/blocks/css/index.js:99:36"]],"language":[["YAML"]]},"format":{"copied_from_pointer":{"id":"451463f2-1475-4700-b399-722d5c0d0485","table":"block","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"}},"created_time":1717038837789,"last_edited_time":1717039197481,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"copied_from":"451463f2-1475-4700-b399-722d5c0d0485","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"8fc75453-2555-4bdd-80c2-7e81157a844a":{"value":{"id":"8fc75453-2555-4bdd-80c2-7e81157a844a","version":593,"type":"text","properties":{"title":[["就是一堆模块找不到的问题,此时的我百思不得其解,我只是更改了一个环境变量,为什么会导致模块找不到呢?我把这个问题拿去问 GPT,GPT回复的答案仿佛醍醐灌顶,帮我彻底解决了这一问题,也就是本文的标题——"],["开发依赖。",[["b"]]]]},"created_time":1717038844610,"last_edited_time":1717038918576,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ae90cdb0-ed40-42ca-8853-921298b6acaf":{"value":{"id":"ae90cdb0-ed40-42ca-8853-921298b6acaf","version":83,"type":"text","properties":{"title":[["查看 package.json 可得:"]]},"created_time":1717038963846,"last_edited_time":1717039032798,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"9af7733c-7ef4-409b-80bc-3aeda451c5a4":{"value":{"id":"9af7733c-7ef4-409b-80bc-3aeda451c5a4","version":19,"type":"code","properties":{"title":[["{\n \"name\": \"nobelium\",\n \"version\": \"1.3.0\",\n \"homepage\": \"https://nobelium.js.org\",\n \"license\": \"MIT\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/craigary/nobelium.git\"\n },\n \"author\": {\n \"name\": \"Craig Hart\",\n \"email\": \"i@craigary.net\",\n \"url\": \"http://craigary.net\"\n },\n \"scripts\": {\n \"dev\": \"next dev\",\n \"build\": \"next build && node ./.next/server/scripts/generate-rss.js\",\n \"export\": \"next export\",\n \"start\": \"next start\",\n \"lint\": \"next lint\",\n \"postbuild\": \"next-sitemap --config next-sitemap.config.js\"\n },\n \"dependencies\": {\n \"axios\": \">=0.21.1\",\n \"feed\": \"^4.2.2\",\n \"gitalk\": \"^1.7.2\",\n \"next\": \"^12.1.0\",\n \"notion-client\": \"^4.10.0\",\n \"notion-utils\": \"^4.10.0\",\n \"preact\": \"^10.5.15\",\n \"react\": \"^17.0.2\",\n \"react-cusdis\": \"^2.0.1\",\n \"react-dom\": \"^17.0.2\",\n \"react-notion-x\": \"^4.11.0\",\n \"use-ackee\": \"^3.0.0\"\n },\n \"devDependencies\": {\n \"autoprefixer\": \"^10.4.0\",\n \"eslint\": \"<8.0.0\",\n \"eslint-config-next\": \"^12.0.3\",\n \"eslint-config-standard\": \"^16.0.2\",\n \"eslint-plugin-import\": \"^2.25.2\",\n \"eslint-plugin-node\": \"^11.1.0\",\n \"eslint-plugin-promise\": \"^5.1.1\",\n \"eslint-plugin-react\": \"^7.26.1\",\n \"next-sitemap\": \"^1.6.203\",\n \"postcss\": \"^8.3.11\",\n \"tailwindcss\": \"^2.2.19\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/craigary/nobelium/issues\",\n \"email\": \"i@craigary.net\"\n }\n}"]],"language":[["JSON"]]},"created_time":1717039033041,"last_edited_time":1717039037080,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"7d6de274-281c-4ef8-9df9-606c601e0b84":{"value":{"id":"7d6de274-281c-4ef8-9df9-606c601e0b84","version":633,"type":"text","properties":{"title":[["我突然发现,原来报错里找不到的tailwindcss被标记成了开发依赖!当我在NODE_ENV里指定环境为生产环境时,就不会安装这个包,从而导致编译错误!解决的办法也很简单,把这几个包都挪到dependencies里就行了。"]]},"created_time":1717039205048,"last_edited_time":1717039357474,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"bb1a9f7a-8591-4b5e-b271-801883ba2e45":{"value":{"id":"bb1a9f7a-8591-4b5e-b271-801883ba2e45","version":23,"type":"sub_header","properties":{"title":[["总结"]]},"created_time":1717039359448,"last_edited_time":1717039361489,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"dc5197a3-b06e-4b34-88a1-da6bdc3ccf48":{"value":{"id":"dc5197a3-b06e-4b34-88a1-da6bdc3ccf48","version":777,"type":"text","properties":{"title":[["这次的问题主要还是拿来主义在作祟,本来项目就是傻瓜式的,我能拿来直接用,部署步骤里面也没写我要改package.json,我为什么要关注这个呢?所以我自然也不会知道有些东西被标记成了开发依赖(我在此之前甚至不知道有这个东西)"]]},"created_time":1717039362193,"last_edited_time":1717039464643,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f54c30e5-b673-4286-9361-2ebf99692269":{"value":{"id":"f54c30e5-b673-4286-9361-2ebf99692269","version":357,"type":"text","properties":{"title":[["至于成果展示嘛,你现在看到的这篇博客,就是我部署的博客了,如果你看到这里,wish you have a good day!"]]},"created_time":1717039472810,"last_edited_time":1717039524574,"parent_id":"5514a197-e266-4487-a3ce-95ae17f26bdb","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"collection":{"4126d965-c550-46af-bc34-c038f0103084":{"value":{"id":"4126d965-c550-46af-bc34-c038f0103084","version":7,"name":[["NOBELIUM Template"]],"schema":{"NX\\Q":{"name":"date","type":"date","description":""},"`gQ~":{"name":"type","type":"select","options":[{"id":"5aff2f95-fd1e-489b-8840-bf10bc9519cb","color":"purple","value":"Post"},{"id":"374d2bc6-a144-4832-8ca4-474aaae0ea1f","color":"orange","value":"Page"}]},"d]hq":{"name":"slug","type":"text"},"sD^m":{"name":"tags","type":"multi_select","options":[{"id":"b67fb051-ddd9-43b5-9fdf-7b7f97a2e056","color":"yellow","value":"Jekyll"},{"id":"2382b30f-9881-4a8b-ae7f-2d34979c4fb9","color":"pink","value":"Website"},{"id":"674b2636-c585-4057-8a6d-0d6ab9718f90","color":"blue","value":"Cooking"},{"id":"499d31ac-26f2-4fed-9ec4-17afe3c6d90d","color":"red","value":"Sociology"},{"id":"38611f8e-ab81-4a71-8d40-7bad1370b26a","color":"orange","value":"TEMP"},{"id":"1ad9233c-079a-44c7-98c3-24ed2faf1879","color":"purple","value":"Book"},{"id":"a3d8eb51-77ce-4e83-a9ae-68da9cee63fa","color":"default","value":"Design"},{"id":"87df7c95-06f0-477a-a530-14be415a1dcf","color":"gray","value":"React"},{"id":"76cb8fea-49e8-47c1-a982-b3a8a23d2278","color":"green","value":"Next.js"},{"id":"63e95905-41f5-4027-8bd4-330129476432","color":"brown","value":"TODO"},{"id":"6dbab06e-0532-484d-9c94-9be429b2abf8","color":"red","value":"Nobelium"},{"id":"a7dda041-f452-423c-b00f-dbe7402400ca","color":"pink","value":"JavaScript"}]},"wz|S":{"name":"summary","type":"text"},"title":{"name":"title","type":"title"},"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":{"name":"status","type":"select","options":[{"id":"22460321-fea2-4c7c-b352-a674760780ac","color":"orange","value":"Idea"},{"id":"41d5f5c6-b53c-42bc-8e0f-fc9402048480","color":"yellow","value":"Draft"},{"id":"c7390b31-9fab-4e21-94ee-7e67ea077a97","color":"blue","value":"Revise"},{"id":"7abc61d4-b405-480d-b699-12588755fa65","color":"red","value":"Published"}]}},"icon":"🎟️","format":{"copied_from_pointer":{"id":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","table":"collection","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"},"collection_page_properties":[{"visible":false,"property":"NX\\Q"},{"visible":false,"property":"d]hq"},{"visible":false,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"visible":false,"property":"sD^m"},{"visible":false,"property":"wz|S"},{"visible":false,"property":"`gQ~"}]},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"file_ids":["6cf3dc36-2f98-4f0e-9679-1bdbb1485129","5520bd92-e709-4c0d-ad58-06923f23f7e9","624d393a-62e3-4464-a1bf-1c79ecd4fbda","d52f6766-3e32-4c3d-8529-46e1f214360f"],"copied_from":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","migrated":true,"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"space":{},"collection_view":{"1df80a31-46e8-4fcd-b9a3-dde8ded944c9":{"value":{"id":"1df80a31-46e8-4fcd-b9a3-dde8ded944c9","version":11,"type":"table","name":"Default view","format":{"table_wrap":false,"table_properties":[{"width":416,"visible":true,"property":"title"},{"width":186,"visible":true,"property":"d]hq"},{"width":145,"visible":true,"property":"NX\\Q"},{"width":147,"visible":true,"property":"wz|S"},{"width":222,"visible":true,"property":"sD^m"},{"width":124,"visible":true,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"width":100,"visible":true,"property":"`gQ~"}],"table_frozen_column_index":-1},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"page_sort":["b1e1d645-db95-42e5-8995-39a80eda6460","e8cd3732-dc1c-43ae-959a-a5a611ec098a","e876558d-e878-47f6-8c95-21be678990a5","5a971ded-d3c5-41be-bef9-ddfff48d43a2","8db8b240-e1c5-4dd7-bf74-72584d7a2ce0","daf94ca4-ec56-47a3-84ed-b1e2479acc4b","d1a2db9b-6820-421e-9b80-017ce7478587","67ea9f83-b9f6-416b-afcb-7c64f7533e6c","45939470-9819-47e8-b12b-999cfefa0aad","c60dc33d-8efb-44be-a863-7a87ad047932","fe4b8d5f-7c49-42c6-a7d5-1cb71c4f7e86","b7233a67-c367-4198-831e-f12089568d1f","4f3bf306-92c4-41b7-a43e-957129a1240a","6a789607-66cf-498e-9b32-eb3fa69a84f4","c9429034-dabd-4a25-8782-97f20c808a60","38c49fe2-37f8-4a7f-a99f-9edb9ddad4c2","474eb638-9f6b-46bf-8004-77668293f199","81d6dfab-69cb-43a0-aa04-e9725f0b67e1","7703d956-84db-46cd-b538-48eae1af68b5","9f937c73-dac9-4ed7-9b01-beefcb321f16","3cf9dcb9-e7db-406c-80ab-c65c11fbf906","5827ab53-e051-455b-b90a-3bdc20158c2c","fa7acd3b-dea9-4fb1-b859-5345f35163c6","696dfc48-62c3-494d-96d0-ec5fa84637e8","79df93cf-9b10-452e-bc62-f39e8cd2d124","9bb8e52d-c459-4528-b1b3-c2378207253a","5da038ef-f419-4a11-aa48-587b3787e040","b4a2c9d4-6a2c-49e6-988d-89a538dfe0f6","c374a479-5cc7-4c54-ba69-6a4d76dc25ad","d470fa67-0e7c-40d8-86ac-9b5a8be88dc8","986be38b-9780-4bb9-bdcd-4e361ddbd888","b7613f56-c2d4-4aae-b967-b7471ade86d0","e357d1fc-7466-4d6a-8d48-71b76ea97cdc","e1735855-4089-4af6-bd4d-0d59f7a76cb4","9b34581a-955a-4229-99d0-8f2a6d0e69ce","b4414811-0599-45cf-b047-fa95eac42d89","c28a8a01-911a-40a2-a607-d3af8cb24017","461d07ae-4b4a-49de-bdcb-341af1153201","3df59023-cb68-4a65-afd1-7f0b8c21cb57","0e3223d1-03df-40fb-90f9-cc8559d776b5","4f45b7d6-cd5b-46ab-b2a6-37ae20bf5f21","fa475a21-5f38-43d4-9a89-67c40b3129ae","97cbc634-fe3a-4b9b-9da6-ac4aaa94772f","8a0d34bc-7e8c-4a68-88a5-5276274f612a","623f8788-a20f-45fd-bb82-08935f59b44d","7ee398f0-450b-47cb-9b53-f5e7736590d2","eae9f077-591e-4841-903b-db395513c834","367d0f2a-0b10-4dbb-b53a-613152f124f9","398e2e28-3997-49bc-a138-0467d4da8531","8aaf4633-e879-44dc-82c8-3c9fb9d3a6f8","1eb5e5f2-8dc9-4ffc-b5e1-09b67be27a83","83465fb9-205b-41fc-83a6-424692ee0a0e","fb1d18d0-6403-4e8a-840e-134553748ff5","4407cb77-3838-4ba5-b474-f15222cd3dba","1880b0f2-e036-42d0-9550-0fb08a962397","d8d60bd6-33f6-458f-a7d6-209ef2fb05a1","29bf65ff-888b-4a76-a8dd-bf54f02c3864","bad1d4ae-fd4a-4671-ae94-dd53d94e0eae","0d59792d-db1c-4ae7-8d7c-4f013be40dcf","337dc259-2805-4b1c-a60f-1b3e6c7badb8","4b1b21a8-c278-4bc6-88f1-1a35d407f4d7","7946aba2-d6d0-45ef-8779-23fa15db8f2d","c18dbce6-9e8c-4f4b-b74a-0994e7c1bc3f","84aa87b7-39e7-493c-87b9-5cae4de95449","1446eadb-8c01-4295-be3a-ecf19361c143","fe8a7d94-e9ba-457d-8f19-10fe53e6ca3c","98a5a0b6-b07b-4065-a73f-2949ad28ac47","6efcebe0-a779-4ec2-a1cb-f77acbb36bf6","c62e81a1-03a9-4b5c-9a55-4e56867de3e4","5514a197-e266-4487-a3ce-95ae17f26bdb","51f3b1a2-a3d5-468a-b552-70d7b0c1a9cb","baacb561-6a62-4343-9e6a-bc1bba469a9c","9ca0671d-b580-4105-825c-d8ef4c531d84","d11cc5a5-b975-4a3a-9d78-739e3680b3fa","98540d41-1879-4bea-9bdf-fa17af5cc06e","f24edd31-035d-4744-9275-118e8751f2f9","975051d4-ebbc-4b3f-98cf-1a52e5e4761d","e5d98bee-b2d5-4b45-ab0b-b77da24aebe7","acac2668-1062-4e7a-b095-eda067da8413","179025c4-d8a8-4c47-b621-9fd6a6f3339b","d256e5ed-5eac-43bb-a32e-581774962c23","59520f7f-1fe9-4c70-b059-8655b93e85df","5692c8b3-efa6-4f19-ab2e-4574afc33f46","9c40a253-b9e8-42cd-8a99-62aaa9789a5e","fd348e41-3e72-42d2-8425-be67e8586a28","3128120c-366d-4937-a28a-f18a446f249b","a1d00689-b6f7-418b-888e-0b47edc21286","090eeb36-6c03-462f-9ada-d544c584641f","e97e229c-7a7c-4ce6-81f7-2cf8700e22ab","926771d9-3aab-4640-8dec-b1202f54aa69","b9a5c48f-1b00-4ae9-94bc-f683d6b393ad","30602d25-a696-40ee-b0fa-c252403391cf","a5da67e2-2ac7-4c3a-8833-50d78f853f9b","cf2532d2-7c86-4027-ae70-a81784ff4769","c1e63240-b7fe-4e0e-b753-78a9210b7779","81581b92-d191-4010-8c4f-e2c0e0b4a4ee","69e2cb5f-2c4a-408a-95b5-9d03f8ccfab3","b5b9b1d9-377b-4053-b110-988a9ec54af7","9a223272-0900-4cc3-a503-2515824da515","7c88ce0f-c4be-4335-abfe-adaaa2c6c99e","79bf7035-9dfd-4193-b7d1-cd578a30ac85","a453aa9d-324d-448f-94f0-c8adb4692241","1030c439-2997-45a7-90ca-f2df5de62e3e","1235234b-cfee-4611-8a9b-c6b32b379585","710ff2f6-c05e-4403-b72a-512bb27ab51f","019d0c55-59ee-4247-90c8-5f9017c37ba5","d105e4c2-dfdb-4c58-b8f5-54e182894431","95585600-97d8-4d2c-bf0c-6b9164dbee54","51e53e64-e6dd-4fd6-8062-5d4455f0a1cb","f4ec684b-e5f1-44e9-a8a7-aca27f7ca6f3","177fa228-9099-4dd5-8969-c67f9c78bd0c","d5ab0d7a-0123-473f-84d4-81740defb9b4","548f6d36-c509-4b79-9c4b-59f227c7f550","c0901673-4f5e-4e51-ad87-0217f2d33a0c","0787f8d6-dc99-47c6-946e-2b008814bebc","0ade5216-1103-486a-aff0-a709ff825b02","a2c4dd21-985c-497d-b421-c2d8a9ec0eeb","908a498c-f7e3-4668-8afd-f179a027b4d9","4945e5c3-033d-467c-a8b3-b1479c1fdf0a","854f4584-28d5-43bd-938e-88d0957c78e3","6a6574f8-d63d-4fed-99c5-38f3df0364ac"],"query2":{"filter":{"operator":"and"},"aggregations":[{"property":"title","aggregator":"count"}]},"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"notion_user":{},"collection_query":{},"signed_urls":{}},"emailHash":"568c024e516219d57a6ef037a7cc3d32"},"__N_SSG":true} \ No newline at end of file diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/index.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/index.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/index.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/index.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/path-middle.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/path-middle.json similarity index 99% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/path-middle.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/path-middle.json index cefd40b4a..103b5e4f4 100644 --- a/_next/data/9jRdE7D5YNzDAbBxxbiy4/path-middle.json +++ b/_next/data/rKeQK-aFhfc5v06FzUaGU/path-middle.json @@ -1 +1 @@ -{"pageProps":{"post":{"id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","date":{"start_date":"2024-05-29"},"type":["Post"],"slug":"path-middle","tags":["React","Next.js","Website"],"summary":"如何愉快的将你的 Nextjs 项目部署上 Github Page?","title":" Next.js 踩坑记(1)——路径体操","status":["Published"],"createdTime":"Mon May 13 2024 06:26:39 GMT+0000 (Coordinated Universal Time)","fullWidth":false,"pageIcon":"😶‍🌫️","pageCover":"/images/page-cover/nasa_eagle_in_lunar_orbit.jpg"},"blockMap":{"block":{"c62e81a1-03a9-4b5c-9a55-4e56867de3e4":{"value":{"id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","version":746,"type":"page","properties":{"NX\\Q":[["‣",[["d",{"type":"date","start_date":"2024-05-29"}]]]],"`gQ~":[["Post"]],"d]hq":[["path-middle"]],"sD^m":[["React,Next.js,Website"]],"wz|S":[["如何愉快的将你的 Nextjs 项目部署上 Github Page?"]],"title":[[" Next.js 踩坑记(1)——路径体操"]],"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":[["Published"]]},"content":["18c8656e-7181-4ba5-a5d2-afb80ddf0ad9","f7f890b7-0711-4b1f-96c8-227213b48736","5733c7e2-5c25-4785-a351-304cda8f2311","93319b5a-2263-45ae-b6c5-4062ce2147af","2366d56a-504b-4596-8045-2bee0b0456c9","4ae0b04b-71b0-4a08-8294-13e05dc21754","3d9bf1a8-2a21-4767-9e4f-d71f1ea135fd","d7339765-d3d4-44cd-98d4-786f05653467","22f184ac-2f4b-4398-ba27-bd7f2bbdb643","0169015b-827f-4031-9b5a-f395469dc896","b2eb601e-7b3f-4bca-9920-e67b7cdc0090","aaa4cc13-94a7-4546-b77d-33e855d17786","b01de668-c8de-4623-9a4c-3a6140d1fff7","3ec443df-e6aa-4f39-8ae5-f212e053b98a","e32aef13-5d0e-4b09-8a18-03fcc6eec67f","ddc314df-3933-44bf-ac8e-3bf684f84430","4ca4c07c-08e6-4474-a7b1-5f1fa250c40b","0a4c3d88-bc0f-4976-8be9-047295ce0b24","adcd5834-9e49-4d86-8073-d96f56fa86bb","6a7be338-0657-4d99-848b-e2eb6d82291d","6b477b4e-2d1d-40ae-8608-6829efe6a2fc","ce1110b8-9e11-4b1c-8802-daa02e4d3045","741f507e-062e-4142-a3e7-757219c22cd0","06a0763c-8012-4f00-aaaf-db5f3fd83556","651c03fc-7c2d-4fc4-a28f-2fd7ca957aa6","ab119fb4-30df-420f-b41a-70c4a81a8653","5f8e0244-86e2-4577-8d1a-3b0bfd0b70a4","460d264b-99a9-48c5-8302-d4dc80d24ca3","4435f1e4-fe29-4c81-805b-4150c3a69c09","65dc1491-78ad-4d22-b5aa-71a0fc0b7283","d7587d67-f832-4da6-84eb-b18c8af9bc4a","270bffa2-142c-4658-8591-1ba05ad190c4","05b26bcf-2946-43e3-9ce2-b8313b0c0e0d","9fe079cf-bd47-45a7-b326-9ab6982ba956","49e1ac74-d8e0-4a51-a9e8-622425b22084","51953bc8-b96c-4cc6-ad34-f03f8895f548","c6d00362-f208-449e-bf58-94337e399588","6f600606-6925-41a1-88b2-cf4a083d5120","e6f7ea01-3528-44f0-a55c-e424123ad520","9a461ca4-e937-45a3-a0f3-464f0bf8c2f1","76b636ae-3ba1-467a-8257-d820d91f519f","61ae3e61-25f0-4f0f-b05e-f8c16a96b7e8","1a092113-c89c-4e12-b01d-221610815496","f33dfea5-7e23-42cb-8780-1e27f2d0dcb1","6e3b0acb-0544-40a7-91cb-c33f5db7e377","7d6e37c8-d4e0-4004-8cdc-942ffb521cc9","f20f86ed-f33c-4dcc-84b3-85936406ad21","0c0eef99-9dc9-49c8-b879-afd744cfaa95","df693aea-0040-43f1-876e-fd43f7bb5f49","ee602031-0545-4249-a0ef-c684bf4f4e93","ce0a6793-3863-424d-936e-4f059261f1eb","aabd027e-0bcb-4ab3-9a1f-aca793487aa5","a4bf6e14-b49a-480d-92fa-ba672089c9a6","a0b6b14e-17f2-4df4-b8ff-9b681fe04ece","72562cc3-d9b0-4440-bd5b-33adfb9b699d","1c7c643a-5656-49f4-a869-bf3289b3616a","739c9da9-03e1-405b-b196-d7b7c496321b","50c4c9f9-1c4a-49cc-bc39-5d2a5fb4a10a","770e0fdd-9fd9-4d36-be07-0c71bfa7a1bd","1fb90465-bc13-42de-b7aa-7f9df1233aef","5d410fe2-f595-44d2-a009-21a7764075c4","585a070e-8d5d-4405-8710-3bd80405e37c","fc39e43b-a324-400a-8654-9d35cf2efd55"],"discussions":["b0801ef6-274a-436e-bc37-38bafa6f9994"],"format":{"page_icon":"😶‍🌫️","page_cover":"/images/page-cover/nasa_eagle_in_lunar_orbit.jpg","page_cover_position":0.6},"created_time":1715581599797,"last_edited_time":1718173671593,"parent_id":"4126d965-c550-46af-bc34-c038f0103084","parent_table":"collection","alive":true,"file_ids":["f5492922-d07b-4739-89cf-b6892fe62e9f"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0eb813c6-179c-43e0-8c12-27cc22341e33":{"value":{"id":"0eb813c6-179c-43e0-8c12-27cc22341e33","version":37,"type":"collection_view_page","view_ids":["1df80a31-46e8-4fcd-b9a3-dde8ded944c9"],"collection_id":"4126d965-c550-46af-bc34-c038f0103084","format":{"block_locked":false,"block_locked_by":"2c0e0b01-f59e-4e03-b7b6-7d706eecada3","collection_pointer":{"id":"4126d965-c550-46af-bc34-c038f0103084","table":"collection","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"},"copied_from_pointer":{"id":"ee99f65a-23ab-44f8-ac80-270122ee8138","table":"block","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"}},"permissions":[{"role":"editor","type":"user_permission","user_id":"4e783237-cc83-440e-9604-bac369009c55"},{"role":"reader","type":"public_permission","added_timestamp":1716963272589}],"created_time":1716962484995,"last_edited_time":1718352944249,"parent_id":"01ff42de-5b53-40d7-a69e-999e3574e640","parent_table":"space","alive":true,"copied_from":"ee99f65a-23ab-44f8-ac80-270122ee8138","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"18c8656e-7181-4ba5-a5d2-afb80ddf0ad9":{"value":{"id":"18c8656e-7181-4ba5-a5d2-afb80ddf0ad9","version":31,"type":"sub_header","properties":{"title":[["引言"]]},"created_time":1716983617531,"last_edited_time":1716983622159,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f7f890b7-0711-4b1f-96c8-227213b48736":{"value":{"id":"f7f890b7-0711-4b1f-96c8-227213b48736","version":996,"type":"text","properties":{"title":[["前段时间入坑了 React 开发,学习了基本语法后就决定找个项目跟着写写,由于b站上相关的资源重复率实在是太高了,我实在不想再写一个苍穹外卖之类的东西,于是在 YouTube 上找到了该视频,该项目是一个作品集项目,我觉得作为我 React 的 startup 非常不错,而且这个网页的审美也很合我的品味。"]]},"created_time":1716983628405,"last_edited_time":1716983825197,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"5733c7e2-5c25-4785-a351-304cda8f2311":{"value":{"id":"5733c7e2-5c25-4785-a351-304cda8f2311","version":11,"type":"bookmark","properties":{"link":[["https://www.youtube.com/watch?v=FTH6Dn3AyIQ&list=PL6QREj8te1P6wX9m5KnicnDVEucbOPsqR"]],"title":[["Build and Deploy an Amazing Developer Portfolio with Next JS and Framer Motion"]],"description":[["Learn how to build and deploy a modern developer portfolio with animations using Next.js. Perfect for showcasing your web development skills!\n\n⭐ Hostinger - https://hostinger.com/mastery10\nUse the code JAVASCRIPTMASTERY to save up to 91% on all yearly hosting plans.\n\n🌟 Sentry - https://bit.ly/4abT6PG\n\n🎨 Portfolio Figma Design - https://resource.jsmastery.pro/minimal-portfolio\n📘 Portfolio Best Practices Guide - https://resource.jsmastery.pro/portfolio-best-practices\n🤖 Special Discord Forum - https://resource.jsmastery.pro/portfolio-discord\n\n🌟 Become a top 1% Next.js 14 developer: https://jsmastery.pro/next14\n🚀 Skyrocket your career in 4 months: https://jsmastery.pro/masterclass\n\n📚 Materials/References:\nGitHub Repository (give it a star ⭐): https://github.com/adrianhajdin/portfolio\nREADME (assets & code): https://github.com/adrianhajdin/portfolio/blob/main/README.md\n\n💻 Join our Discord Community - https://discord.com/invite/n6EdbFJ\n🐦 Follow us on Twitter: http://twitter.com/jsmasterypro\n🖼️ Follow us on Instagram: http://instagram.com/javascriptmastery\n\n💼 Business Inquiries: contact@jsmastery.pro\n\nTime Stamps 👇\n00:00:00 — Intro\n00:05:40 — Project Setup\n00:14:48 — Hero Section\n00:40:30 — Bento Grid\n01:23:18 — Recent Projects\n01:43:40 — Sentry\n01:52:56 — Testimonials\n02:06:00 — Work Experience\n02:14:18 — My Approach Section\n02:26:24 — Footer\n02:35:13 — Fixing Bugs\n02:39:19 — Deployment"]]},"format":{"bookmark_icon":"https://www.youtube.com/s/desktop/11f8caf2/img/favicon_144x144.png","bookmark_cover":"https://i.ytimg.com/vi/FTH6Dn3AyIQ/maxresdefault.jpg"},"created_time":1716983706184,"last_edited_time":1716983706185,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"93319b5a-2263-45ae-b6c5-4062ce2147af":{"value":{"id":"93319b5a-2263-45ae-b6c5-4062ce2147af","version":643,"type":"text","properties":{"title":[["本着 up 敲一行我就敲一行的学习精神,两个半小时的项目也不难敲,最后项目上线的时候该博主使用 Vercel 进行部署,本着能省一点是一点的原则,我决定使用 Github Page 功能进行部署,主要原因如下"]]},"created_time":1716983712445,"last_edited_time":1716983897868,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"2366d56a-504b-4596-8045-2bee0b0456c9":{"value":{"id":"2366d56a-504b-4596-8045-2bee0b0456c9","version":48,"type":"numbered_list","properties":{"title":[["免费,真的良心"]]},"created_time":1716983898199,"last_edited_time":1716983904918,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4ae0b04b-71b0-4a08-8294-13e05dc21754":{"value":{"id":"4ae0b04b-71b0-4a08-8294-13e05dc21754","version":221,"type":"numbered_list","properties":{"title":[["本来这东西就是静态的,没什么后端服务,我想着给他渲染成纯静态页面丢上去不就完了呗"]]},"created_time":1716983905582,"last_edited_time":1716983940242,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"3d9bf1a8-2a21-4767-9e4f-d71f1ea135fd":{"value":{"id":"3d9bf1a8-2a21-4767-9e4f-d71f1ea135fd","version":174,"type":"text","properties":{"title":[["于是,开搞!"]]},"created_time":1716983942505,"last_edited_time":1716983970713,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"d7339765-d3d4-44cd-98d4-786f05653467":{"value":{"id":"d7339765-d3d4-44cd-98d4-786f05653467","version":27,"type":"sub_header","properties":{"title":[["困境"]]},"created_time":1716984004490,"last_edited_time":1716984013340,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"22f184ac-2f4b-4398-ba27-bd7f2bbdb643":{"value":{"id":"22f184ac-2f4b-4398-ba27-bd7f2bbdb643","version":14,"type":"image","properties":{"size":[["441.0KB"]],"title":[["Untitled"]],"source":[["https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/6a314909-e6df-4fac-a08c-1d1b16dc7717/Untitled.png"]]},"format":{"block_width":3842,"display_source":"https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/6a314909-e6df-4fac-a08c-1d1b16dc7717/Untitled.png","block_full_width":false,"block_page_width":true,"block_aspect_ratio":0.5439875065070275,"block_preserve_scale":true},"created_time":1716984078530,"last_edited_time":1716984138802,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"file_ids":["6a314909-e6df-4fac-a08c-1d1b16dc7717"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0169015b-827f-4031-9b5a-f395469dc896":{"value":{"id":"0169015b-827f-4031-9b5a-f395469dc896","version":851,"type":"text","properties":{"title":[["首先,我遇到了第一个问题,部署页面有两种方式,我到底该使用 Github Action 方式,还是 Deploy from a branch 方式?网上介绍的大多是第二种方式,这里笔者推荐使用第一种方式,我们可以看到这两种方式配置好之后的工作流是什么样的,孰优孰劣大家自有评判"]]},"created_time":1716984013930,"last_edited_time":1716984193619,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"b2eb601e-7b3f-4bca-9920-e67b7cdc0090":{"value":{"id":"b2eb601e-7b3f-4bca-9920-e67b7cdc0090","version":79,"type":"sub_sub_header","properties":{"title":[["Github Action 方式"]]},"created_time":1716984190452,"last_edited_time":1716984202765,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"aaa4cc13-94a7-4546-b77d-33e855d17786":{"value":{"id":"aaa4cc13-94a7-4546-b77d-33e855d17786","version":339,"type":"text","properties":{"title":[["以 main 分支为当前分支为例,只需要将当前 commit push 上去→触发 Github Action,直接完成 page 更新。"]]},"created_time":1716984203105,"last_edited_time":1716984262360,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"b01de668-c8de-4623-9a4c-3a6140d1fff7":{"value":{"id":"b01de668-c8de-4623-9a4c-3a6140d1fff7","version":74,"type":"sub_sub_header","properties":{"title":[["Deploy from a branch 方式"]]},"created_time":1716984268515,"last_edited_time":1716984279937,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"3ec443df-e6aa-4f39-8ae5-f212e053b98a":{"value":{"id":"3ec443df-e6aa-4f39-8ae5-f212e053b98a","version":480,"type":"text","properties":{"title":[["本地修改后,在本地进行编译→使用 gh-pages 将编译结果推送到 gh-pages 分支,完成更新,相比于前一种方式,除了修改代码,还需要手动编译,再推送,非常不优雅。"]]},"created_time":1716984283566,"last_edited_time":1716984425792,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e32aef13-5d0e-4b09-8a18-03fcc6eec67f":{"value":{"id":"e32aef13-5d0e-4b09-8a18-03fcc6eec67f","version":26,"type":"divider","created_time":1716984427005,"last_edited_time":1716984452058,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ddc314df-3933-44bf-ac8e-3bf684f84430":{"value":{"id":"ddc314df-3933-44bf-ac8e-3bf684f84430","version":569,"type":"text","properties":{"title":[["关于如何使用 Github Action 方式进行部署,选中该方式之后,github 会弹一个工作流文件出来,检测到当前项目为 Nextjs 项目后会自动推荐 Nextjs 的工作流,我们可以暂时先用这个工作流,后面再进行修改。"]]},"created_time":1716984452056,"last_edited_time":1716984522524,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4ca4c07c-08e6-4474-a7b1-5f1fa250c40b":{"value":{"id":"4ca4c07c-08e6-4474-a7b1-5f1fa250c40b","version":413,"type":"text","properties":{"title":[["此时按理来说,只要你没有使用什么在服务端不可用的生命周期钩子,你的代码会顺利在 Github 的服务器上完成编译,并成为该项目的 Page,但事情并没有这么简单。"]]},"created_time":1716984535882,"last_edited_time":1716984585103,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0a4c3d88-bc0f-4976-8be9-047295ce0b24":{"value":{"id":"0a4c3d88-bc0f-4976-8be9-047295ce0b24","version":49,"type":"sub_header","properties":{"title":[["静态资源路径问题"]]},"created_time":1716950035639,"last_edited_time":1716984593492,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"adcd5834-9e49-4d86-8073-d96f56fa86bb":{"value":{"id":"adcd5834-9e49-4d86-8073-d96f56fa86bb","version":429,"type":"text","properties":{"title":[["当我第一次看到 Github Action 中的工作流中,编译成功的绿标出现后,我非常兴奋的打开了我的网页,它长这样:"]]},"created_time":1716984615678,"last_edited_time":1716984699363,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6a7be338-0657-4d99-848b-e2eb6d82291d":{"value":{"id":"6a7be338-0657-4d99-848b-e2eb6d82291d","version":170,"type":"image","properties":{"size":[["396.2KB"]],"title":[["Untitled"]],"source":[["https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/9ca960f8-e2dd-496e-b01d-4dbddff831bf/Untitled.png"]],"caption":[["这是我直接打开本地编译的结果,仅作演示"]]},"format":{"block_width":3842,"display_source":"https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/9ca960f8-e2dd-496e-b01d-4dbddff831bf/Untitled.png","block_full_width":false,"block_page_width":true,"block_aspect_ratio":0.5439875065070275,"block_preserve_scale":true},"created_time":1716984700196,"last_edited_time":1716984730566,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"file_ids":["9ca960f8-e2dd-496e-b01d-4dbddff831bf"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6b477b4e-2d1d-40ae-8608-6829efe6a2fc":{"value":{"id":"6b477b4e-2d1d-40ae-8608-6829efe6a2fc","version":1481,"type":"text","properties":{"title":[["坑爹呢这是 😵‍💫,此时打开开发者工具发现,除了当前页面的 html 外,不论是处于"],["_next/static",[["c"]]],[" 路径下的静态资源(主要是js和css),还是处于"],["public",[["c"]]],[" 路径下的静态资源(主要是图片),资源路径通通是错的,这个项目的路径应该是"],["musherm.github.io/Portofolio/",[["c"]]],[" ,但所有的资源都指向"],["musherm.github.io/",[["c"]]],[" ,换言之,我需要给所有的静态资源路径前面加上一个"],["’Portofolio/’",[["c"]]],[" ,查阅官方文档,我们可以发现,nextjs.config.mjs这一文件中,存在两个选项与路径有关,他们分别是:"]]},"created_time":1716984730892,"last_edited_time":1716985203740,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ce1110b8-9e11-4b1c-8802-daa02e4d3045":{"value":{"id":"ce1110b8-9e11-4b1c-8802-daa02e4d3045","version":34,"type":"sub_sub_header","properties":{"title":[["basePath"]]},"created_time":1716985037471,"last_edited_time":1716985043224,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"741f507e-062e-4142-a3e7-757219c22cd0":{"value":{"id":"741f507e-062e-4142-a3e7-757219c22cd0","version":14,"type":"bookmark","properties":{"link":[["https://nextjs.org/docs/app/api-reference/next-config-js/basePath"]],"title":[["next.config.js Options: basePath"]],"description":[["Use `basePath` to deploy a Next.js application under a sub-path of a domain."]]},"format":{"bookmark_icon":"https://nextjs.org/favicon.ico","bookmark_cover":"https://nextjs.org/api/docs-og?title=next.config.js%20Options:%20basePath"},"created_time":1716951692498,"last_edited_time":1716985051318,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"06a0763c-8012-4f00-aaaf-db5f3fd83556":{"value":{"id":"06a0763c-8012-4f00-aaaf-db5f3fd83556","version":236,"type":"text","properties":{"title":[["该选项用于在一个子路径下部署项目,他主要在两种场景下生效:"]]},"created_time":1716951240061,"last_edited_time":1716985051318,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"651c03fc-7c2d-4fc4-a28f-2fd7ca957aa6":{"value":{"id":"651c03fc-7c2d-4fc4-a28f-2fd7ca957aa6","version":409,"type":"numbered_list","properties":{"title":[["Links:当使用"],["next/link",[["c"]]],["和"],["next/router",[["c"]]],[" 时,会自动添加basePath,也就是说"],["About Page",[["c"]]],[" 会输出"],["About Page",[["c"]]],[" ("],["basePath=’/docs’",[["c"]]],[")"]]},"created_time":1716951734847,"last_edited_time":1716985051318,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ab119fb4-30df-420f-b41a-70c4a81a8653":{"value":{"id":"ab119fb4-30df-420f-b41a-70c4a81a8653","version":503,"type":"numbered_list","properties":{"title":[["Image:当使用"],["next/image",[["c"]]],[" 时,需要手动添加basePath,说白了就是不管你引用图片用的是"],["",[["c"]]],["还是"],["",[["c"]]],[" ,你通通需要手动把这个路径写完整"]]},"created_time":1716951867601,"last_edited_time":1716985105705,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"5f8e0244-86e2-4577-8d1a-3b0bfd0b70a4":{"value":{"id":"5f8e0244-86e2-4577-8d1a-3b0bfd0b70a4","version":256,"type":"callout","properties":{"title":[["官方既然考虑到了图片资源会出现这个问题,为啥不能通过 basePath 自动给他加上呢,无语了。"]]},"format":{"page_icon":"💡","block_color":"gray_background"},"created_time":1716985121729,"last_edited_time":1716985164034,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"460d264b-99a9-48c5-8302-d4dc80d24ca3":{"value":{"id":"460d264b-99a9-48c5-8302-d4dc80d24ca3","version":50,"type":"sub_sub_header","properties":{"title":[["assetPrefix"]]},"created_time":1716951922375,"last_edited_time":1716985177375,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4435f1e4-fe29-4c81-805b-4150c3a69c09":{"value":{"id":"4435f1e4-fe29-4c81-805b-4150c3a69c09","version":14,"type":"bookmark","properties":{"link":[["https://nextjs.org/docs/app/api-reference/next-config-js/assetPrefix"]],"title":[["next.config.js Options: assetPrefix"]],"description":[["Learn how to use the assetPrefix config option to configure your CDN."]]},"format":{"bookmark_icon":"https://nextjs.org/favicon.ico","bookmark_cover":"https://nextjs.org/api/docs-og?title=next.config.js%20Options:%20assetPrefix"},"created_time":1716951962847,"last_edited_time":1716985177375,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"65dc1491-78ad-4d22-b5aa-71a0fc0b7283":{"value":{"id":"65dc1491-78ad-4d22-b5aa-71a0fc0b7283","version":531,"type":"text","properties":{"title":[["该选项仅针对"],["_next/static",[["c"]]],[" 下的静态js css资源,不会影响public下的资源,看来这一选项可以帮助我们解决js和css找不到的问题!"]]},"created_time":1716951965842,"last_edited_time":1716985221586,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"d7587d67-f832-4da6-84eb-b18c8af9bc4a":{"value":{"id":"d7587d67-f832-4da6-84eb-b18c8af9bc4a","version":88,"type":"text","properties":{"title":[["修改我们的"],["nextconfig",[["c"]]],[" 为这样:"]]},"created_time":1716985223062,"last_edited_time":1716985237382,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"270bffa2-142c-4658-8591-1ba05ad190c4":{"value":{"id":"270bffa2-142c-4658-8591-1ba05ad190c4","version":61,"type":"code","properties":{"title":[["/** @type {import('next').NextConfig} */\nconst nextConfig = {\n output: \"export\",\n basePath: \"/Portofolio\",\n assetPrefix: \"/Portofolio/\",\n images: {\n unoptimized: true,\n },\n};\n\nexport default nextConfig;"]],"language":[["YAML"]]},"created_time":1716985237652,"last_edited_time":1716985272728,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"05b26bcf-2946-43e3-9ce2-b8313b0c0e0d":{"value":{"id":"05b26bcf-2946-43e3-9ce2-b8313b0c0e0d","version":530,"type":"text","properties":{"title":[["好,至少我们的js和css确实找到了,但是事情还没有解决,我们的img标签下的所有图片,无一例外,还是指向了根目录,根据官方文档,你必须手动给他加上。"]]},"created_time":1716985043443,"last_edited_time":1716985349543,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"9fe079cf-bd47-45a7-b326-9ab6982ba956":{"value":{"id":"9fe079cf-bd47-45a7-b326-9ab6982ba956","version":94,"type":"text","properties":{"title":[["比如一个"],["img",[["c"]]],["标签,你修改之前它长这样:"]]},"created_time":1716985492118,"last_edited_time":1716985503967,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"49e1ac74-d8e0-4a51-a9e8-622425b22084":{"value":{"id":"49e1ac74-d8e0-4a51-a9e8-622425b22084","version":29,"type":"code","properties":{"title":[[""]],"language":[["HTML"]]},"created_time":1716985504275,"last_edited_time":1716985523729,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"51953bc8-b96c-4cc6-ad34-f03f8895f548":{"value":{"id":"51953bc8-b96c-4cc6-ad34-f03f8895f548","version":119,"type":"text","properties":{"title":[["修改之后呢,它应该长这样:"]]},"created_time":1716985531947,"last_edited_time":1716985557865,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"c6d00362-f208-449e-bf58-94337e399588":{"value":{"id":"c6d00362-f208-449e-bf58-94337e399588","version":73,"type":"code","properties":{"title":[[""]],"language":[["HTML"]]},"created_time":1716985550673,"last_edited_time":1716985583855,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6f600606-6925-41a1-88b2-cf4a083d5120":{"value":{"id":"6f600606-6925-41a1-88b2-cf4a083d5120","version":468,"type":"text","properties":{"title":[["同时修改你的"],["nextconfig",[["c"]]],[",提供一下"],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],[" 这个环境变量,当然,你也可以通过.env .env.local 来提供,但我不喜欢把配置文件分散在好几个文件上,尽量集中管理比较清晰:"]]},"created_time":1716985586202,"last_edited_time":1716985677880,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e6f7ea01-3528-44f0-a55c-e424123ad520":{"value":{"id":"e6f7ea01-3528-44f0-a55c-e424123ad520","version":13,"type":"code","properties":{"title":[["/** @type {import('next').NextConfig} */\nconst nextConfig = {\n output: \"export\",\n basePath: \"/Portofolio\",\n assetPrefix: \"/Portofolio/\",\n images: {\n unoptimized: true,\n },\n env: {\n NEXT_PUBLIC_ASSET_PREFIX: \"/Portofolio\",\n },\n};\n\nexport default nextConfig;"]],"language":[["YAML"]]},"format":{"copied_from_pointer":{"id":"270bffa2-142c-4658-8591-1ba05ad190c4","table":"block","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"}},"created_time":1716985610072,"last_edited_time":1716985620993,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"copied_from":"270bffa2-142c-4658-8591-1ba05ad190c4","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"9a461ca4-e937-45a3-a0f3-464f0bf8c2f1":{"value":{"id":"9a461ca4-e937-45a3-a0f3-464f0bf8c2f1","version":1453,"type":"text","properties":{"title":[["到这里,你在编译的代码如果直接打开,资源路径应该已经加上了你的相对路径名,如果直接 push 上去,Github Action 部署还是会不成功,因为服务器端并不会读取你在 nextconfig 里定义的环境变量,你还需要在工作流中提供这个环境变量,所幸这个操作其实也很简单:打开用于定义工作流的文件,在我的环境下是.github/workflows/nextjs.yml,并在编译的时候提供环境变量,比如这样"]]},"created_time":1716985683696,"last_edited_time":1716985997416,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"76b636ae-3ba1-467a-8257-d820d91f519f":{"value":{"id":"76b636ae-3ba1-467a-8257-d820d91f519f","version":73,"type":"code","properties":{"title":[["- name: Build with Next.js\n run: ${{ steps.detect-package-manager.outputs.runner }} next build\n # Add this\n env:\n NEXT_PUBLIC_ASSET_PREFIX: /Portofolio"]],"language":[["HTML"]]},"created_time":1716985959476,"last_edited_time":1716986032763,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"61ae3e61-25f0-4f0f-b05e-f8c16a96b7e8":{"value":{"id":"61ae3e61-25f0-4f0f-b05e-f8c16a96b7e8","version":604,"type":"text","properties":{"title":[["添加的这一行,会在服务器端编译的过程中提供这个环境变量,从而保证编译后对于public文件夹下的静态资源访问正确,到这里,我们就已经完成了对于 Nextjs 项目的 Github Page 部署。"]]},"created_time":1716986035370,"last_edited_time":1716986107333,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"1a092113-c89c-4e12-b01d-221610815496":{"value":{"id":"1a092113-c89c-4e12-b01d-221610815496","version":38,"type":"sub_header","properties":{"title":[["后谈"]]},"created_time":1716986035478,"last_edited_time":1716986121105,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f33dfea5-7e23-42cb-8780-1e27f2d0dcb1":{"value":{"id":"f33dfea5-7e23-42cb-8780-1e27f2d0dcb1","version":1420,"type":"text","properties":{"title":[["细心的小伙伴可能发现,写死 "],["basePath",[["c"]]],[" "],["assetPrefix",[["c"]]],[" "],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],["这些变量,当你在本地dev环境开发时,你的首页会从"],["localhost:3000",[["c"]]],["变成"],["localhost:3000/Portofolio",[["c"]]],[" ,如果你能接受,那其实也还行,但如果想“不行,我在本地开发的时候,我就要在"],["localhost:3000",[["c"]]],["直接访问\n!”那你可以继续看下去(没错,说的就是我自己,我真的忍受不了每次从终端点开这个链接,还需要手动补全后面的路径)。答案是,你可以像"],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],[" 一样,再引入一个"],["NODE_ENV",[["c"]]],[" 来判断当前的开发环境,从而在生产环境使用子路径,但在开发环境不实用,此时"],["nextconfig",[["c"]]],[" 修改如下:"]]},"created_time":1716986121484,"last_edited_time":1716986816164,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6e3b0acb-0544-40a7-91cb-c33f5db7e377":{"value":{"id":"6e3b0acb-0544-40a7-91cb-c33f5db7e377","version":29,"type":"code","properties":{"title":[["/** @type {import('next').NextConfig} */\nconst isProd = process.env.NODE_ENV === \"production\";\nconst nextConfig = {\n output: \"export\",\n basePath: isProd ? \"/Portofolio\" : \"\",\n assetPrefix: isProd ? \"/Portofolio/\" : \"\",\n images: {\n unoptimized: true,\n },\n env: {\n NEXT_PUBLIC_ASSET_PREFIX: isProd ? \"/Portofolio\" : \"\",\n },\n};\n\nexport default nextConfig;"]],"language":[["JavaScript"]]},"created_time":1716949365767,"last_edited_time":1716949376078,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"7d6e37c8-d4e0-4004-8cdc-942ffb521cc9":{"value":{"id":"7d6e37c8-d4e0-4004-8cdc-942ffb521cc9","version":71,"type":"text","properties":{"title":[["同时修改"],["img",[["c"]]],["标签的"],["src",[["c"]]],["如下"]]},"created_time":1716986582026,"last_edited_time":1716986591601,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f20f86ed-f33c-4dcc-84b3-85936406ad21":{"value":{"id":"f20f86ed-f33c-4dcc-84b3-85936406ad21","version":152,"type":"code","properties":{"title":[["\"profile\"\n/"]],"language":[["HTML"]]},"created_time":1716986592670,"last_edited_time":1716987334895,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0c0eef99-9dc9-49c8-b879-afd744cfaa95":{"value":{"id":"0c0eef99-9dc9-49c8-b879-afd744cfaa95","version":717,"type":"text","properties":{"title":[["你可能想问为什么?按理来说我在dev环境已经指定了"],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],["为空啊?这就是"],["Nextjs",[["c"]]],[" 的又一大坑,"],["Nextjs",[["c"]]],[" 的环境变量无法指定为空!(至少据我所知)如果你像这样试图指定为空,它会变成"],["undefined",[["c"]]],[" ,因而你需要通过"],["(process.env.NEXT_PUBLIC_ASSET_PREFIX || \"\")",[["c"]]],[" 这样的表达式体操来让"],["undefined",[["c"]]],[" 变成真正的空。"]]},"created_time":1716986651252,"last_edited_time":1716986762031,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"df693aea-0040-43f1-876e-fd43f7bb5f49":{"value":{"id":"df693aea-0040-43f1-876e-fd43f7bb5f49","version":1223,"type":"text","properties":{"title":[["此外,你还需要修改 Github Action 的流程定义文件,从而指定编译环境为 "],["production",[["c"]]],["。"]]},"created_time":1716949377965,"last_edited_time":1716986767311,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ee602031-0545-4249-a0ef-c684bf4f4e93":{"value":{"id":"ee602031-0545-4249-a0ef-c684bf4f4e93","version":88,"type":"code","properties":{"title":[["- name: Build with Next.js\n run: ${{ steps.detect-package-manager.outputs.runner }} next build\n env:\n NODE_ENV: production\n NEXT_PUBLIC_ASSET_PREFIX: /Portofolio"]],"language":[["YAML"]]},"created_time":1716949953467,"last_edited_time":1716949975205,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ce0a6793-3863-424d-936e-4f059261f1eb":{"value":{"id":"ce0a6793-3863-424d-936e-4f059261f1eb","version":177,"type":"text","properties":{"title":[["于是,经过这么一番折腾,我们终于调好了环境!"]]},"created_time":1716950154513,"last_edited_time":1716986791417,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"aabd027e-0bcb-4ab3-9a1f-aca793487aa5":{"value":{"id":"aabd027e-0bcb-4ab3-9a1f-aca793487aa5","version":310,"type":"numbered_list","properties":{"title":[["在 Github Action 侧,我们通过 "],["basePath",[["c"]]],[" "],["assetPrefix",[["c"]]],[" "],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],[" 三兄弟,完成了对"],["css",[["c"]]],[" "],["js",[["c"]]],[" "],["img",[["c"]]],[" 这些静态资源的路径补全;"]]},"created_time":1716986793250,"last_edited_time":1716986860739,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"a4bf6e14-b49a-480d-92fa-ba672089c9a6":{"value":{"id":"a4bf6e14-b49a-480d-92fa-ba672089c9a6","version":180,"type":"numbered_list","properties":{"title":[["在本地 dev 侧,我们将这三兄弟全部设为空,从而保持原有的根路径访问"]]},"created_time":1716986861149,"last_edited_time":1716986885377,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"a0b6b14e-17f2-4df4-b8ff-9b681fe04ece":{"value":{"id":"a0b6b14e-17f2-4df4-b8ff-9b681fe04ece","version":186,"type":"sub_header","properties":{"title":[["后后谈",[["m","dca29fb8-f230-4241-85bc-a45cf5860ce6"]]]]},"discussions":["dca29fb8-f230-4241-85bc-a45cf5860ce6"],"created_time":1716952946184,"last_edited_time":1716986900114,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"72562cc3-d9b0-4440-bd5b-33adfb9b699d":{"value":{"id":"72562cc3-d9b0-4440-bd5b-33adfb9b699d","version":139,"type":"text","properties":{"title":[["总结这篇博客查阅资料时,我查到了这个东西"]]},"created_time":1716986900924,"last_edited_time":1716986914376,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"1c7c643a-5656-49f4-a869-bf3289b3616a":{"value":{"id":"1c7c643a-5656-49f4-a869-bf3289b3616a","version":11,"type":"bookmark","properties":{"link":[["https://nextjs.org/docs/app/api-reference/next-config-js/images"]],"title":[["next.config.js Options: images"]],"description":[["Custom configuration for the next/image loader"]]},"format":{"bookmark_icon":"https://nextjs.org/favicon.ico","bookmark_cover":"https://nextjs.org/api/docs-og?title=next.config.js%20Options:%20images"},"created_time":1716952988842,"last_edited_time":1716952988843,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"739c9da9-03e1-405b-b196-d7b7c496321b":{"value":{"id":"739c9da9-03e1-405b-b196-d7b7c496321b","version":513,"type":"text","properties":{"title":[["由于你可以像这样定义"],["image loader",[["c"]]],[" :"]]},"created_time":1716952990064,"last_edited_time":1716986936382,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"50c4c9f9-1c4a-49cc-bc39-5d2a5fb4a10a":{"value":{"id":"50c4c9f9-1c4a-49cc-bc39-5d2a5fb4a10a","version":40,"type":"code","properties":{"title":[["export default function myImageLoader({ src, width, quality }) {\n return `https://example.com/${src}?w=${width}&q=${quality || 75}`\n}"]],"language":[["JavaScript"]]},"created_time":1716986937027,"last_edited_time":1716986944221,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"770e0fdd-9fd9-4d36-be07-0c71bfa7a1bd":{"value":{"id":"770e0fdd-9fd9-4d36-be07-0c71bfa7a1bd","version":334,"type":"text","properties":{"title":[["所以理论上,你也可以通过在imageLoader内部拼接src,从而补全路径,但笔者懒得写了,就先放到 todo List 吧。"]]},"created_time":1716953072104,"last_edited_time":1716987000655,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"1fb90465-bc13-42de-b7aa-7f9df1233aef":{"value":{"id":"1fb90465-bc13-42de-b7aa-7f9df1233aef","version":15,"type":"divider","created_time":1717036647752,"last_edited_time":1717036650416,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"5d410fe2-f595-44d2-a009-21a7764075c4":{"value":{"id":"5d410fe2-f595-44d2-a009-21a7764075c4","version":27,"type":"text","properties":{"title":[["成果展示:"]]},"created_time":1717036650414,"last_edited_time":1717036653968,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"585a070e-8d5d-4405-8710-3bd80405e37c":{"value":{"id":"585a070e-8d5d-4405-8710-3bd80405e37c","version":11,"type":"bookmark","properties":{"link":[["https://musherm.github.io/Portofolio/"]],"title":[["Musher's Portfolio"]],"description":[["Modern & Minimalist JS Mastery Portfolio"]]},"created_time":1717036696545,"last_edited_time":1717036696546,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"fc39e43b-a324-400a-8654-9d35cf2efd55":{"value":{"id":"fc39e43b-a324-400a-8654-9d35cf2efd55","version":3,"type":"text","created_time":1717036724683,"last_edited_time":1717036724683,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"collection":{"4126d965-c550-46af-bc34-c038f0103084":{"value":{"id":"4126d965-c550-46af-bc34-c038f0103084","version":7,"name":[["NOBELIUM Template"]],"schema":{"NX\\Q":{"name":"date","type":"date","description":""},"`gQ~":{"name":"type","type":"select","options":[{"id":"5aff2f95-fd1e-489b-8840-bf10bc9519cb","color":"purple","value":"Post"},{"id":"374d2bc6-a144-4832-8ca4-474aaae0ea1f","color":"orange","value":"Page"}]},"d]hq":{"name":"slug","type":"text"},"sD^m":{"name":"tags","type":"multi_select","options":[{"id":"b67fb051-ddd9-43b5-9fdf-7b7f97a2e056","color":"yellow","value":"Jekyll"},{"id":"2382b30f-9881-4a8b-ae7f-2d34979c4fb9","color":"pink","value":"Website"},{"id":"674b2636-c585-4057-8a6d-0d6ab9718f90","color":"blue","value":"Cooking"},{"id":"499d31ac-26f2-4fed-9ec4-17afe3c6d90d","color":"red","value":"Sociology"},{"id":"38611f8e-ab81-4a71-8d40-7bad1370b26a","color":"orange","value":"TEMP"},{"id":"1ad9233c-079a-44c7-98c3-24ed2faf1879","color":"purple","value":"Book"},{"id":"a3d8eb51-77ce-4e83-a9ae-68da9cee63fa","color":"default","value":"Design"},{"id":"87df7c95-06f0-477a-a530-14be415a1dcf","color":"gray","value":"React"},{"id":"76cb8fea-49e8-47c1-a982-b3a8a23d2278","color":"green","value":"Next.js"},{"id":"63e95905-41f5-4027-8bd4-330129476432","color":"brown","value":"TODO"},{"id":"6dbab06e-0532-484d-9c94-9be429b2abf8","color":"red","value":"Nobelium"},{"id":"a7dda041-f452-423c-b00f-dbe7402400ca","color":"pink","value":"JavaScript"}]},"wz|S":{"name":"summary","type":"text"},"title":{"name":"title","type":"title"},"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":{"name":"status","type":"select","options":[{"id":"22460321-fea2-4c7c-b352-a674760780ac","color":"orange","value":"Idea"},{"id":"41d5f5c6-b53c-42bc-8e0f-fc9402048480","color":"yellow","value":"Draft"},{"id":"c7390b31-9fab-4e21-94ee-7e67ea077a97","color":"blue","value":"Revise"},{"id":"7abc61d4-b405-480d-b699-12588755fa65","color":"red","value":"Published"}]}},"icon":"🎟️","format":{"copied_from_pointer":{"id":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","table":"collection","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"},"collection_page_properties":[{"visible":false,"property":"NX\\Q"},{"visible":false,"property":"d]hq"},{"visible":false,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"visible":false,"property":"sD^m"},{"visible":false,"property":"wz|S"},{"visible":false,"property":"`gQ~"}]},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"file_ids":["6cf3dc36-2f98-4f0e-9679-1bdbb1485129","5520bd92-e709-4c0d-ad58-06923f23f7e9","624d393a-62e3-4464-a1bf-1c79ecd4fbda","d52f6766-3e32-4c3d-8529-46e1f214360f"],"copied_from":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","migrated":true,"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"discussion":{"b0801ef6-274a-436e-bc37-38bafa6f9994":{"value":{"id":"b0801ef6-274a-436e-bc37-38bafa6f9994","version":2,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","resolved":false,"comments":["dd130b8f-1056-4e54-9c4e-35e0dfa1b7ad"],"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640","type":"default"},"role":"reader"},"dca29fb8-f230-4241-85bc-a45cf5860ce6":{"value":{"id":"dca29fb8-f230-4241-85bc-a45cf5860ce6","version":2,"parent_id":"a0b6b14e-17f2-4df4-b8ff-9b681fe04ece","parent_table":"block","context":[["后后谈",[["m","dca29fb8-f230-4241-85bc-a45cf5860ce6"]]]],"resolved":false,"comments":["62542805-4e86-4146-bf20-0629a0188fca"],"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640","type":"default"},"role":"reader"}},"comment":{"dd130b8f-1056-4e54-9c4e-35e0dfa1b7ad":{"value":{"id":"dd130b8f-1056-4e54-9c4e-35e0dfa1b7ad","version":4,"parent_id":"b0801ef6-274a-436e-bc37-38bafa6f9994","text":[["关键词:nextjs 静态资源 路径 子目录"]],"created_time":1716984319376,"last_edited_time":1716984300000,"parent_table":"discussion","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"62542805-4e86-4146-bf20-0629a0188fca":{"value":{"id":"62542805-4e86-4146-bf20-0629a0188fca","version":4,"parent_id":"dca29fb8-f230-4241-85bc-a45cf5860ce6","text":[["Todo"]],"created_time":1716987015600,"last_edited_time":1716987000000,"parent_table":"discussion","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"space":{},"collection_view":{"1df80a31-46e8-4fcd-b9a3-dde8ded944c9":{"value":{"id":"1df80a31-46e8-4fcd-b9a3-dde8ded944c9","version":11,"type":"table","name":"Default view","format":{"table_wrap":false,"table_properties":[{"width":416,"visible":true,"property":"title"},{"width":186,"visible":true,"property":"d]hq"},{"width":145,"visible":true,"property":"NX\\Q"},{"width":147,"visible":true,"property":"wz|S"},{"width":222,"visible":true,"property":"sD^m"},{"width":124,"visible":true,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"width":100,"visible":true,"property":"`gQ~"}],"table_frozen_column_index":-1},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"page_sort":["b1e1d645-db95-42e5-8995-39a80eda6460","e8cd3732-dc1c-43ae-959a-a5a611ec098a","e876558d-e878-47f6-8c95-21be678990a5","5a971ded-d3c5-41be-bef9-ddfff48d43a2","8db8b240-e1c5-4dd7-bf74-72584d7a2ce0","daf94ca4-ec56-47a3-84ed-b1e2479acc4b","d1a2db9b-6820-421e-9b80-017ce7478587","67ea9f83-b9f6-416b-afcb-7c64f7533e6c","45939470-9819-47e8-b12b-999cfefa0aad","c60dc33d-8efb-44be-a863-7a87ad047932","fe4b8d5f-7c49-42c6-a7d5-1cb71c4f7e86","b7233a67-c367-4198-831e-f12089568d1f","4f3bf306-92c4-41b7-a43e-957129a1240a","6a789607-66cf-498e-9b32-eb3fa69a84f4","c9429034-dabd-4a25-8782-97f20c808a60","38c49fe2-37f8-4a7f-a99f-9edb9ddad4c2","474eb638-9f6b-46bf-8004-77668293f199","81d6dfab-69cb-43a0-aa04-e9725f0b67e1","7703d956-84db-46cd-b538-48eae1af68b5","9f937c73-dac9-4ed7-9b01-beefcb321f16","3cf9dcb9-e7db-406c-80ab-c65c11fbf906","5827ab53-e051-455b-b90a-3bdc20158c2c","fa7acd3b-dea9-4fb1-b859-5345f35163c6","696dfc48-62c3-494d-96d0-ec5fa84637e8","79df93cf-9b10-452e-bc62-f39e8cd2d124","9bb8e52d-c459-4528-b1b3-c2378207253a","5da038ef-f419-4a11-aa48-587b3787e040","b4a2c9d4-6a2c-49e6-988d-89a538dfe0f6","c374a479-5cc7-4c54-ba69-6a4d76dc25ad","d470fa67-0e7c-40d8-86ac-9b5a8be88dc8","986be38b-9780-4bb9-bdcd-4e361ddbd888","b7613f56-c2d4-4aae-b967-b7471ade86d0","e357d1fc-7466-4d6a-8d48-71b76ea97cdc","e1735855-4089-4af6-bd4d-0d59f7a76cb4","9b34581a-955a-4229-99d0-8f2a6d0e69ce","b4414811-0599-45cf-b047-fa95eac42d89","c28a8a01-911a-40a2-a607-d3af8cb24017","461d07ae-4b4a-49de-bdcb-341af1153201","3df59023-cb68-4a65-afd1-7f0b8c21cb57","0e3223d1-03df-40fb-90f9-cc8559d776b5","4f45b7d6-cd5b-46ab-b2a6-37ae20bf5f21","fa475a21-5f38-43d4-9a89-67c40b3129ae","97cbc634-fe3a-4b9b-9da6-ac4aaa94772f","8a0d34bc-7e8c-4a68-88a5-5276274f612a","623f8788-a20f-45fd-bb82-08935f59b44d","7ee398f0-450b-47cb-9b53-f5e7736590d2","eae9f077-591e-4841-903b-db395513c834","367d0f2a-0b10-4dbb-b53a-613152f124f9","398e2e28-3997-49bc-a138-0467d4da8531","8aaf4633-e879-44dc-82c8-3c9fb9d3a6f8","1eb5e5f2-8dc9-4ffc-b5e1-09b67be27a83","83465fb9-205b-41fc-83a6-424692ee0a0e","fb1d18d0-6403-4e8a-840e-134553748ff5","4407cb77-3838-4ba5-b474-f15222cd3dba","1880b0f2-e036-42d0-9550-0fb08a962397","d8d60bd6-33f6-458f-a7d6-209ef2fb05a1","29bf65ff-888b-4a76-a8dd-bf54f02c3864","bad1d4ae-fd4a-4671-ae94-dd53d94e0eae","0d59792d-db1c-4ae7-8d7c-4f013be40dcf","337dc259-2805-4b1c-a60f-1b3e6c7badb8","4b1b21a8-c278-4bc6-88f1-1a35d407f4d7","7946aba2-d6d0-45ef-8779-23fa15db8f2d","c18dbce6-9e8c-4f4b-b74a-0994e7c1bc3f","84aa87b7-39e7-493c-87b9-5cae4de95449","1446eadb-8c01-4295-be3a-ecf19361c143","fe8a7d94-e9ba-457d-8f19-10fe53e6ca3c","98a5a0b6-b07b-4065-a73f-2949ad28ac47","6efcebe0-a779-4ec2-a1cb-f77acbb36bf6","c62e81a1-03a9-4b5c-9a55-4e56867de3e4","5514a197-e266-4487-a3ce-95ae17f26bdb","51f3b1a2-a3d5-468a-b552-70d7b0c1a9cb","baacb561-6a62-4343-9e6a-bc1bba469a9c","9ca0671d-b580-4105-825c-d8ef4c531d84","d11cc5a5-b975-4a3a-9d78-739e3680b3fa","98540d41-1879-4bea-9bdf-fa17af5cc06e","f24edd31-035d-4744-9275-118e8751f2f9","975051d4-ebbc-4b3f-98cf-1a52e5e4761d","e5d98bee-b2d5-4b45-ab0b-b77da24aebe7","acac2668-1062-4e7a-b095-eda067da8413","179025c4-d8a8-4c47-b621-9fd6a6f3339b","d256e5ed-5eac-43bb-a32e-581774962c23","59520f7f-1fe9-4c70-b059-8655b93e85df","5692c8b3-efa6-4f19-ab2e-4574afc33f46","9c40a253-b9e8-42cd-8a99-62aaa9789a5e","fd348e41-3e72-42d2-8425-be67e8586a28","3128120c-366d-4937-a28a-f18a446f249b","a1d00689-b6f7-418b-888e-0b47edc21286","090eeb36-6c03-462f-9ada-d544c584641f","e97e229c-7a7c-4ce6-81f7-2cf8700e22ab","926771d9-3aab-4640-8dec-b1202f54aa69","b9a5c48f-1b00-4ae9-94bc-f683d6b393ad","30602d25-a696-40ee-b0fa-c252403391cf","a5da67e2-2ac7-4c3a-8833-50d78f853f9b","cf2532d2-7c86-4027-ae70-a81784ff4769","c1e63240-b7fe-4e0e-b753-78a9210b7779","81581b92-d191-4010-8c4f-e2c0e0b4a4ee","69e2cb5f-2c4a-408a-95b5-9d03f8ccfab3","b5b9b1d9-377b-4053-b110-988a9ec54af7","9a223272-0900-4cc3-a503-2515824da515","7c88ce0f-c4be-4335-abfe-adaaa2c6c99e","79bf7035-9dfd-4193-b7d1-cd578a30ac85","a453aa9d-324d-448f-94f0-c8adb4692241","1030c439-2997-45a7-90ca-f2df5de62e3e","1235234b-cfee-4611-8a9b-c6b32b379585","710ff2f6-c05e-4403-b72a-512bb27ab51f","019d0c55-59ee-4247-90c8-5f9017c37ba5","d105e4c2-dfdb-4c58-b8f5-54e182894431","95585600-97d8-4d2c-bf0c-6b9164dbee54","51e53e64-e6dd-4fd6-8062-5d4455f0a1cb","f4ec684b-e5f1-44e9-a8a7-aca27f7ca6f3","177fa228-9099-4dd5-8969-c67f9c78bd0c","d5ab0d7a-0123-473f-84d4-81740defb9b4","548f6d36-c509-4b79-9c4b-59f227c7f550","c0901673-4f5e-4e51-ad87-0217f2d33a0c","0787f8d6-dc99-47c6-946e-2b008814bebc","0ade5216-1103-486a-aff0-a709ff825b02","a2c4dd21-985c-497d-b421-c2d8a9ec0eeb","908a498c-f7e3-4668-8afd-f179a027b4d9","4945e5c3-033d-467c-a8b3-b1479c1fdf0a","854f4584-28d5-43bd-938e-88d0957c78e3","6a6574f8-d63d-4fed-99c5-38f3df0364ac"],"query2":{"filter":{"operator":"and"},"aggregations":[{"property":"title","aggregator":"count"}]},"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"notion_user":{},"collection_query":{},"signed_urls":{}},"emailHash":"568c024e516219d57a6ef037a7cc3d32"},"__N_SSG":true} \ No newline at end of file +{"pageProps":{"post":{"id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","date":{"start_date":"2024-05-29"},"type":["Post"],"slug":"path-middle","tags":["React","Next.js","Website"],"summary":"如何愉快的将你的 Nextjs 项目部署上 Github Page?","title":" Next.js 踩坑记(1)——路径体操","status":["Published"],"createdTime":"Mon May 13 2024 06:26:39 GMT+0000 (Coordinated Universal Time)","fullWidth":false,"pageIcon":"😶‍🌫️","pageCover":"/images/page-cover/nasa_eagle_in_lunar_orbit.jpg"},"blockMap":{"block":{"c62e81a1-03a9-4b5c-9a55-4e56867de3e4":{"value":{"id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","version":751,"type":"page","properties":{"NX\\Q":[["‣",[["d",{"type":"date","start_date":"2024-05-29"}]]]],"`gQ~":[["Post"]],"d]hq":[["path-middle"]],"sD^m":[["React,Next.js,Website"]],"wz|S":[["如何愉快的将你的 Nextjs 项目部署上 Github Page?"]],"title":[[" Next.js 踩坑记(1)——路径体操"]],"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":[["Published"]]},"content":["18c8656e-7181-4ba5-a5d2-afb80ddf0ad9","f7f890b7-0711-4b1f-96c8-227213b48736","5733c7e2-5c25-4785-a351-304cda8f2311","93319b5a-2263-45ae-b6c5-4062ce2147af","2366d56a-504b-4596-8045-2bee0b0456c9","4ae0b04b-71b0-4a08-8294-13e05dc21754","3d9bf1a8-2a21-4767-9e4f-d71f1ea135fd","d7339765-d3d4-44cd-98d4-786f05653467","22f184ac-2f4b-4398-ba27-bd7f2bbdb643","0169015b-827f-4031-9b5a-f395469dc896","b2eb601e-7b3f-4bca-9920-e67b7cdc0090","aaa4cc13-94a7-4546-b77d-33e855d17786","b01de668-c8de-4623-9a4c-3a6140d1fff7","3ec443df-e6aa-4f39-8ae5-f212e053b98a","e32aef13-5d0e-4b09-8a18-03fcc6eec67f","ddc314df-3933-44bf-ac8e-3bf684f84430","4ca4c07c-08e6-4474-a7b1-5f1fa250c40b","0a4c3d88-bc0f-4976-8be9-047295ce0b24","adcd5834-9e49-4d86-8073-d96f56fa86bb","6a7be338-0657-4d99-848b-e2eb6d82291d","6b477b4e-2d1d-40ae-8608-6829efe6a2fc","ce1110b8-9e11-4b1c-8802-daa02e4d3045","741f507e-062e-4142-a3e7-757219c22cd0","06a0763c-8012-4f00-aaaf-db5f3fd83556","651c03fc-7c2d-4fc4-a28f-2fd7ca957aa6","ab119fb4-30df-420f-b41a-70c4a81a8653","5f8e0244-86e2-4577-8d1a-3b0bfd0b70a4","460d264b-99a9-48c5-8302-d4dc80d24ca3","4435f1e4-fe29-4c81-805b-4150c3a69c09","65dc1491-78ad-4d22-b5aa-71a0fc0b7283","d7587d67-f832-4da6-84eb-b18c8af9bc4a","270bffa2-142c-4658-8591-1ba05ad190c4","05b26bcf-2946-43e3-9ce2-b8313b0c0e0d","9fe079cf-bd47-45a7-b326-9ab6982ba956","49e1ac74-d8e0-4a51-a9e8-622425b22084","51953bc8-b96c-4cc6-ad34-f03f8895f548","c6d00362-f208-449e-bf58-94337e399588","6f600606-6925-41a1-88b2-cf4a083d5120","e6f7ea01-3528-44f0-a55c-e424123ad520","9a461ca4-e937-45a3-a0f3-464f0bf8c2f1","76b636ae-3ba1-467a-8257-d820d91f519f","61ae3e61-25f0-4f0f-b05e-f8c16a96b7e8","1a092113-c89c-4e12-b01d-221610815496","f33dfea5-7e23-42cb-8780-1e27f2d0dcb1","6e3b0acb-0544-40a7-91cb-c33f5db7e377","7d6e37c8-d4e0-4004-8cdc-942ffb521cc9","f20f86ed-f33c-4dcc-84b3-85936406ad21","0c0eef99-9dc9-49c8-b879-afd744cfaa95","df693aea-0040-43f1-876e-fd43f7bb5f49","ee602031-0545-4249-a0ef-c684bf4f4e93","ce0a6793-3863-424d-936e-4f059261f1eb","aabd027e-0bcb-4ab3-9a1f-aca793487aa5","a4bf6e14-b49a-480d-92fa-ba672089c9a6","a0b6b14e-17f2-4df4-b8ff-9b681fe04ece","72562cc3-d9b0-4440-bd5b-33adfb9b699d","1c7c643a-5656-49f4-a869-bf3289b3616a","739c9da9-03e1-405b-b196-d7b7c496321b","50c4c9f9-1c4a-49cc-bc39-5d2a5fb4a10a","770e0fdd-9fd9-4d36-be07-0c71bfa7a1bd","1fb90465-bc13-42de-b7aa-7f9df1233aef","5d410fe2-f595-44d2-a009-21a7764075c4","585a070e-8d5d-4405-8710-3bd80405e37c","fc39e43b-a324-400a-8654-9d35cf2efd55"],"discussions":["b0801ef6-274a-436e-bc37-38bafa6f9994"],"format":{"page_icon":"😶‍🌫️","page_cover":"/images/page-cover/nasa_eagle_in_lunar_orbit.jpg","page_cover_position":0.6},"created_time":1715581599797,"last_edited_time":1718589586740,"parent_id":"4126d965-c550-46af-bc34-c038f0103084","parent_table":"collection","alive":true,"file_ids":["f5492922-d07b-4739-89cf-b6892fe62e9f"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0eb813c6-179c-43e0-8c12-27cc22341e33":{"value":{"id":"0eb813c6-179c-43e0-8c12-27cc22341e33","version":37,"type":"collection_view_page","view_ids":["1df80a31-46e8-4fcd-b9a3-dde8ded944c9"],"collection_id":"4126d965-c550-46af-bc34-c038f0103084","format":{"block_locked":false,"block_locked_by":"2c0e0b01-f59e-4e03-b7b6-7d706eecada3","collection_pointer":{"id":"4126d965-c550-46af-bc34-c038f0103084","table":"collection","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"},"copied_from_pointer":{"id":"ee99f65a-23ab-44f8-ac80-270122ee8138","table":"block","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"}},"permissions":[{"role":"editor","type":"user_permission","user_id":"4e783237-cc83-440e-9604-bac369009c55"},{"role":"reader","type":"public_permission","added_timestamp":1716963272589}],"created_time":1716962484995,"last_edited_time":1718352944249,"parent_id":"01ff42de-5b53-40d7-a69e-999e3574e640","parent_table":"space","alive":true,"copied_from":"ee99f65a-23ab-44f8-ac80-270122ee8138","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"18c8656e-7181-4ba5-a5d2-afb80ddf0ad9":{"value":{"id":"18c8656e-7181-4ba5-a5d2-afb80ddf0ad9","version":31,"type":"sub_header","properties":{"title":[["引言"]]},"created_time":1716983617531,"last_edited_time":1716983622159,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f7f890b7-0711-4b1f-96c8-227213b48736":{"value":{"id":"f7f890b7-0711-4b1f-96c8-227213b48736","version":996,"type":"text","properties":{"title":[["前段时间入坑了 React 开发,学习了基本语法后就决定找个项目跟着写写,由于b站上相关的资源重复率实在是太高了,我实在不想再写一个苍穹外卖之类的东西,于是在 YouTube 上找到了该视频,该项目是一个作品集项目,我觉得作为我 React 的 startup 非常不错,而且这个网页的审美也很合我的品味。"]]},"created_time":1716983628405,"last_edited_time":1716983825197,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"5733c7e2-5c25-4785-a351-304cda8f2311":{"value":{"id":"5733c7e2-5c25-4785-a351-304cda8f2311","version":11,"type":"bookmark","properties":{"link":[["https://www.youtube.com/watch?v=FTH6Dn3AyIQ&list=PL6QREj8te1P6wX9m5KnicnDVEucbOPsqR"]],"title":[["Build and Deploy an Amazing Developer Portfolio with Next JS and Framer Motion"]],"description":[["Learn how to build and deploy a modern developer portfolio with animations using Next.js. Perfect for showcasing your web development skills!\n\n⭐ Hostinger - https://hostinger.com/mastery10\nUse the code JAVASCRIPTMASTERY to save up to 91% on all yearly hosting plans.\n\n🌟 Sentry - https://bit.ly/4abT6PG\n\n🎨 Portfolio Figma Design - https://resource.jsmastery.pro/minimal-portfolio\n📘 Portfolio Best Practices Guide - https://resource.jsmastery.pro/portfolio-best-practices\n🤖 Special Discord Forum - https://resource.jsmastery.pro/portfolio-discord\n\n🌟 Become a top 1% Next.js 14 developer: https://jsmastery.pro/next14\n🚀 Skyrocket your career in 4 months: https://jsmastery.pro/masterclass\n\n📚 Materials/References:\nGitHub Repository (give it a star ⭐): https://github.com/adrianhajdin/portfolio\nREADME (assets & code): https://github.com/adrianhajdin/portfolio/blob/main/README.md\n\n💻 Join our Discord Community - https://discord.com/invite/n6EdbFJ\n🐦 Follow us on Twitter: http://twitter.com/jsmasterypro\n🖼️ Follow us on Instagram: http://instagram.com/javascriptmastery\n\n💼 Business Inquiries: contact@jsmastery.pro\n\nTime Stamps 👇\n00:00:00 — Intro\n00:05:40 — Project Setup\n00:14:48 — Hero Section\n00:40:30 — Bento Grid\n01:23:18 — Recent Projects\n01:43:40 — Sentry\n01:52:56 — Testimonials\n02:06:00 — Work Experience\n02:14:18 — My Approach Section\n02:26:24 — Footer\n02:35:13 — Fixing Bugs\n02:39:19 — Deployment"]]},"format":{"bookmark_icon":"https://www.youtube.com/s/desktop/11f8caf2/img/favicon_144x144.png","bookmark_cover":"https://i.ytimg.com/vi/FTH6Dn3AyIQ/maxresdefault.jpg"},"created_time":1716983706184,"last_edited_time":1716983706185,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"93319b5a-2263-45ae-b6c5-4062ce2147af":{"value":{"id":"93319b5a-2263-45ae-b6c5-4062ce2147af","version":643,"type":"text","properties":{"title":[["本着 up 敲一行我就敲一行的学习精神,两个半小时的项目也不难敲,最后项目上线的时候该博主使用 Vercel 进行部署,本着能省一点是一点的原则,我决定使用 Github Page 功能进行部署,主要原因如下"]]},"created_time":1716983712445,"last_edited_time":1716983897868,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"2366d56a-504b-4596-8045-2bee0b0456c9":{"value":{"id":"2366d56a-504b-4596-8045-2bee0b0456c9","version":48,"type":"numbered_list","properties":{"title":[["免费,真的良心"]]},"created_time":1716983898199,"last_edited_time":1716983904918,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4ae0b04b-71b0-4a08-8294-13e05dc21754":{"value":{"id":"4ae0b04b-71b0-4a08-8294-13e05dc21754","version":221,"type":"numbered_list","properties":{"title":[["本来这东西就是静态的,没什么后端服务,我想着给他渲染成纯静态页面丢上去不就完了呗"]]},"created_time":1716983905582,"last_edited_time":1716983940242,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"3d9bf1a8-2a21-4767-9e4f-d71f1ea135fd":{"value":{"id":"3d9bf1a8-2a21-4767-9e4f-d71f1ea135fd","version":174,"type":"text","properties":{"title":[["于是,开搞!"]]},"created_time":1716983942505,"last_edited_time":1716983970713,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"d7339765-d3d4-44cd-98d4-786f05653467":{"value":{"id":"d7339765-d3d4-44cd-98d4-786f05653467","version":27,"type":"sub_header","properties":{"title":[["困境"]]},"created_time":1716984004490,"last_edited_time":1716984013340,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"22f184ac-2f4b-4398-ba27-bd7f2bbdb643":{"value":{"id":"22f184ac-2f4b-4398-ba27-bd7f2bbdb643","version":14,"type":"image","properties":{"size":[["441.0KB"]],"title":[["Untitled"]],"source":[["https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/6a314909-e6df-4fac-a08c-1d1b16dc7717/Untitled.png"]]},"format":{"block_width":3842,"display_source":"https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/6a314909-e6df-4fac-a08c-1d1b16dc7717/Untitled.png","block_full_width":false,"block_page_width":true,"block_aspect_ratio":0.5439875065070275,"block_preserve_scale":true},"created_time":1716984078530,"last_edited_time":1716984138802,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"file_ids":["6a314909-e6df-4fac-a08c-1d1b16dc7717"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0169015b-827f-4031-9b5a-f395469dc896":{"value":{"id":"0169015b-827f-4031-9b5a-f395469dc896","version":851,"type":"text","properties":{"title":[["首先,我遇到了第一个问题,部署页面有两种方式,我到底该使用 Github Action 方式,还是 Deploy from a branch 方式?网上介绍的大多是第二种方式,这里笔者推荐使用第一种方式,我们可以看到这两种方式配置好之后的工作流是什么样的,孰优孰劣大家自有评判"]]},"created_time":1716984013930,"last_edited_time":1716984193619,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"b2eb601e-7b3f-4bca-9920-e67b7cdc0090":{"value":{"id":"b2eb601e-7b3f-4bca-9920-e67b7cdc0090","version":79,"type":"sub_sub_header","properties":{"title":[["Github Action 方式"]]},"created_time":1716984190452,"last_edited_time":1716984202765,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"aaa4cc13-94a7-4546-b77d-33e855d17786":{"value":{"id":"aaa4cc13-94a7-4546-b77d-33e855d17786","version":339,"type":"text","properties":{"title":[["以 main 分支为当前分支为例,只需要将当前 commit push 上去→触发 Github Action,直接完成 page 更新。"]]},"created_time":1716984203105,"last_edited_time":1716984262360,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"b01de668-c8de-4623-9a4c-3a6140d1fff7":{"value":{"id":"b01de668-c8de-4623-9a4c-3a6140d1fff7","version":74,"type":"sub_sub_header","properties":{"title":[["Deploy from a branch 方式"]]},"created_time":1716984268515,"last_edited_time":1716984279937,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"3ec443df-e6aa-4f39-8ae5-f212e053b98a":{"value":{"id":"3ec443df-e6aa-4f39-8ae5-f212e053b98a","version":480,"type":"text","properties":{"title":[["本地修改后,在本地进行编译→使用 gh-pages 将编译结果推送到 gh-pages 分支,完成更新,相比于前一种方式,除了修改代码,还需要手动编译,再推送,非常不优雅。"]]},"created_time":1716984283566,"last_edited_time":1716984425792,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e32aef13-5d0e-4b09-8a18-03fcc6eec67f":{"value":{"id":"e32aef13-5d0e-4b09-8a18-03fcc6eec67f","version":26,"type":"divider","created_time":1716984427005,"last_edited_time":1716984452058,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ddc314df-3933-44bf-ac8e-3bf684f84430":{"value":{"id":"ddc314df-3933-44bf-ac8e-3bf684f84430","version":569,"type":"text","properties":{"title":[["关于如何使用 Github Action 方式进行部署,选中该方式之后,github 会弹一个工作流文件出来,检测到当前项目为 Nextjs 项目后会自动推荐 Nextjs 的工作流,我们可以暂时先用这个工作流,后面再进行修改。"]]},"created_time":1716984452056,"last_edited_time":1716984522524,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4ca4c07c-08e6-4474-a7b1-5f1fa250c40b":{"value":{"id":"4ca4c07c-08e6-4474-a7b1-5f1fa250c40b","version":413,"type":"text","properties":{"title":[["此时按理来说,只要你没有使用什么在服务端不可用的生命周期钩子,你的代码会顺利在 Github 的服务器上完成编译,并成为该项目的 Page,但事情并没有这么简单。"]]},"created_time":1716984535882,"last_edited_time":1716984585103,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0a4c3d88-bc0f-4976-8be9-047295ce0b24":{"value":{"id":"0a4c3d88-bc0f-4976-8be9-047295ce0b24","version":49,"type":"sub_header","properties":{"title":[["静态资源路径问题"]]},"created_time":1716950035639,"last_edited_time":1716984593492,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"adcd5834-9e49-4d86-8073-d96f56fa86bb":{"value":{"id":"adcd5834-9e49-4d86-8073-d96f56fa86bb","version":429,"type":"text","properties":{"title":[["当我第一次看到 Github Action 中的工作流中,编译成功的绿标出现后,我非常兴奋的打开了我的网页,它长这样:"]]},"created_time":1716984615678,"last_edited_time":1716984699363,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6a7be338-0657-4d99-848b-e2eb6d82291d":{"value":{"id":"6a7be338-0657-4d99-848b-e2eb6d82291d","version":170,"type":"image","properties":{"size":[["396.2KB"]],"title":[["Untitled"]],"source":[["https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/9ca960f8-e2dd-496e-b01d-4dbddff831bf/Untitled.png"]],"caption":[["这是我直接打开本地编译的结果,仅作演示"]]},"format":{"block_width":3842,"display_source":"https://prod-files-secure.s3.us-west-2.amazonaws.com/01ff42de-5b53-40d7-a69e-999e3574e640/9ca960f8-e2dd-496e-b01d-4dbddff831bf/Untitled.png","block_full_width":false,"block_page_width":true,"block_aspect_ratio":0.5439875065070275,"block_preserve_scale":true},"created_time":1716984700196,"last_edited_time":1716984730566,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"file_ids":["9ca960f8-e2dd-496e-b01d-4dbddff831bf"],"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6b477b4e-2d1d-40ae-8608-6829efe6a2fc":{"value":{"id":"6b477b4e-2d1d-40ae-8608-6829efe6a2fc","version":1481,"type":"text","properties":{"title":[["坑爹呢这是 😵‍💫,此时打开开发者工具发现,除了当前页面的 html 外,不论是处于"],["_next/static",[["c"]]],[" 路径下的静态资源(主要是js和css),还是处于"],["public",[["c"]]],[" 路径下的静态资源(主要是图片),资源路径通通是错的,这个项目的路径应该是"],["musherm.github.io/Portofolio/",[["c"]]],[" ,但所有的资源都指向"],["musherm.github.io/",[["c"]]],[" ,换言之,我需要给所有的静态资源路径前面加上一个"],["’Portofolio/’",[["c"]]],[" ,查阅官方文档,我们可以发现,nextjs.config.mjs这一文件中,存在两个选项与路径有关,他们分别是:"]]},"created_time":1716984730892,"last_edited_time":1716985203740,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ce1110b8-9e11-4b1c-8802-daa02e4d3045":{"value":{"id":"ce1110b8-9e11-4b1c-8802-daa02e4d3045","version":34,"type":"sub_sub_header","properties":{"title":[["basePath"]]},"created_time":1716985037471,"last_edited_time":1716985043224,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"741f507e-062e-4142-a3e7-757219c22cd0":{"value":{"id":"741f507e-062e-4142-a3e7-757219c22cd0","version":14,"type":"bookmark","properties":{"link":[["https://nextjs.org/docs/app/api-reference/next-config-js/basePath"]],"title":[["next.config.js Options: basePath"]],"description":[["Use `basePath` to deploy a Next.js application under a sub-path of a domain."]]},"format":{"bookmark_icon":"https://nextjs.org/favicon.ico","bookmark_cover":"https://nextjs.org/api/docs-og?title=next.config.js%20Options:%20basePath"},"created_time":1716951692498,"last_edited_time":1716985051318,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"06a0763c-8012-4f00-aaaf-db5f3fd83556":{"value":{"id":"06a0763c-8012-4f00-aaaf-db5f3fd83556","version":236,"type":"text","properties":{"title":[["该选项用于在一个子路径下部署项目,他主要在两种场景下生效:"]]},"created_time":1716951240061,"last_edited_time":1716985051318,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"651c03fc-7c2d-4fc4-a28f-2fd7ca957aa6":{"value":{"id":"651c03fc-7c2d-4fc4-a28f-2fd7ca957aa6","version":409,"type":"numbered_list","properties":{"title":[["Links:当使用"],["next/link",[["c"]]],["和"],["next/router",[["c"]]],[" 时,会自动添加basePath,也就是说"],["About Page",[["c"]]],[" 会输出"],["About Page",[["c"]]],[" ("],["basePath=’/docs’",[["c"]]],[")"]]},"created_time":1716951734847,"last_edited_time":1716985051318,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ab119fb4-30df-420f-b41a-70c4a81a8653":{"value":{"id":"ab119fb4-30df-420f-b41a-70c4a81a8653","version":503,"type":"numbered_list","properties":{"title":[["Image:当使用"],["next/image",[["c"]]],[" 时,需要手动添加basePath,说白了就是不管你引用图片用的是"],["",[["c"]]],["还是"],["",[["c"]]],[" ,你通通需要手动把这个路径写完整"]]},"created_time":1716951867601,"last_edited_time":1716985105705,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"5f8e0244-86e2-4577-8d1a-3b0bfd0b70a4":{"value":{"id":"5f8e0244-86e2-4577-8d1a-3b0bfd0b70a4","version":256,"type":"callout","properties":{"title":[["官方既然考虑到了图片资源会出现这个问题,为啥不能通过 basePath 自动给他加上呢,无语了。"]]},"format":{"page_icon":"💡","block_color":"gray_background"},"created_time":1716985121729,"last_edited_time":1716985164034,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"460d264b-99a9-48c5-8302-d4dc80d24ca3":{"value":{"id":"460d264b-99a9-48c5-8302-d4dc80d24ca3","version":50,"type":"sub_sub_header","properties":{"title":[["assetPrefix"]]},"created_time":1716951922375,"last_edited_time":1716985177375,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"4435f1e4-fe29-4c81-805b-4150c3a69c09":{"value":{"id":"4435f1e4-fe29-4c81-805b-4150c3a69c09","version":14,"type":"bookmark","properties":{"link":[["https://nextjs.org/docs/app/api-reference/next-config-js/assetPrefix"]],"title":[["next.config.js Options: assetPrefix"]],"description":[["Learn how to use the assetPrefix config option to configure your CDN."]]},"format":{"bookmark_icon":"https://nextjs.org/favicon.ico","bookmark_cover":"https://nextjs.org/api/docs-og?title=next.config.js%20Options:%20assetPrefix"},"created_time":1716951962847,"last_edited_time":1716985177375,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"65dc1491-78ad-4d22-b5aa-71a0fc0b7283":{"value":{"id":"65dc1491-78ad-4d22-b5aa-71a0fc0b7283","version":531,"type":"text","properties":{"title":[["该选项仅针对"],["_next/static",[["c"]]],[" 下的静态js css资源,不会影响public下的资源,看来这一选项可以帮助我们解决js和css找不到的问题!"]]},"created_time":1716951965842,"last_edited_time":1716985221586,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"d7587d67-f832-4da6-84eb-b18c8af9bc4a":{"value":{"id":"d7587d67-f832-4da6-84eb-b18c8af9bc4a","version":88,"type":"text","properties":{"title":[["修改我们的"],["nextconfig",[["c"]]],[" 为这样:"]]},"created_time":1716985223062,"last_edited_time":1716985237382,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"270bffa2-142c-4658-8591-1ba05ad190c4":{"value":{"id":"270bffa2-142c-4658-8591-1ba05ad190c4","version":61,"type":"code","properties":{"title":[["/** @type {import('next').NextConfig} */\nconst nextConfig = {\n output: \"export\",\n basePath: \"/Portofolio\",\n assetPrefix: \"/Portofolio/\",\n images: {\n unoptimized: true,\n },\n};\n\nexport default nextConfig;"]],"language":[["YAML"]]},"created_time":1716985237652,"last_edited_time":1716985272728,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"05b26bcf-2946-43e3-9ce2-b8313b0c0e0d":{"value":{"id":"05b26bcf-2946-43e3-9ce2-b8313b0c0e0d","version":530,"type":"text","properties":{"title":[["好,至少我们的js和css确实找到了,但是事情还没有解决,我们的img标签下的所有图片,无一例外,还是指向了根目录,根据官方文档,你必须手动给他加上。"]]},"created_time":1716985043443,"last_edited_time":1716985349543,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"9fe079cf-bd47-45a7-b326-9ab6982ba956":{"value":{"id":"9fe079cf-bd47-45a7-b326-9ab6982ba956","version":94,"type":"text","properties":{"title":[["比如一个"],["img",[["c"]]],["标签,你修改之前它长这样:"]]},"created_time":1716985492118,"last_edited_time":1716985503967,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"49e1ac74-d8e0-4a51-a9e8-622425b22084":{"value":{"id":"49e1ac74-d8e0-4a51-a9e8-622425b22084","version":29,"type":"code","properties":{"title":[[""]],"language":[["HTML"]]},"created_time":1716985504275,"last_edited_time":1716985523729,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"51953bc8-b96c-4cc6-ad34-f03f8895f548":{"value":{"id":"51953bc8-b96c-4cc6-ad34-f03f8895f548","version":119,"type":"text","properties":{"title":[["修改之后呢,它应该长这样:"]]},"created_time":1716985531947,"last_edited_time":1716985557865,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"c6d00362-f208-449e-bf58-94337e399588":{"value":{"id":"c6d00362-f208-449e-bf58-94337e399588","version":73,"type":"code","properties":{"title":[[""]],"language":[["HTML"]]},"created_time":1716985550673,"last_edited_time":1716985583855,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6f600606-6925-41a1-88b2-cf4a083d5120":{"value":{"id":"6f600606-6925-41a1-88b2-cf4a083d5120","version":468,"type":"text","properties":{"title":[["同时修改你的"],["nextconfig",[["c"]]],[",提供一下"],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],[" 这个环境变量,当然,你也可以通过.env .env.local 来提供,但我不喜欢把配置文件分散在好几个文件上,尽量集中管理比较清晰:"]]},"created_time":1716985586202,"last_edited_time":1716985677880,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"e6f7ea01-3528-44f0-a55c-e424123ad520":{"value":{"id":"e6f7ea01-3528-44f0-a55c-e424123ad520","version":13,"type":"code","properties":{"title":[["/** @type {import('next').NextConfig} */\nconst nextConfig = {\n output: \"export\",\n basePath: \"/Portofolio\",\n assetPrefix: \"/Portofolio/\",\n images: {\n unoptimized: true,\n },\n env: {\n NEXT_PUBLIC_ASSET_PREFIX: \"/Portofolio\",\n },\n};\n\nexport default nextConfig;"]],"language":[["YAML"]]},"format":{"copied_from_pointer":{"id":"270bffa2-142c-4658-8591-1ba05ad190c4","table":"block","spaceId":"01ff42de-5b53-40d7-a69e-999e3574e640"}},"created_time":1716985610072,"last_edited_time":1716985620993,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"copied_from":"270bffa2-142c-4658-8591-1ba05ad190c4","created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"9a461ca4-e937-45a3-a0f3-464f0bf8c2f1":{"value":{"id":"9a461ca4-e937-45a3-a0f3-464f0bf8c2f1","version":1453,"type":"text","properties":{"title":[["到这里,你在编译的代码如果直接打开,资源路径应该已经加上了你的相对路径名,如果直接 push 上去,Github Action 部署还是会不成功,因为服务器端并不会读取你在 nextconfig 里定义的环境变量,你还需要在工作流中提供这个环境变量,所幸这个操作其实也很简单:打开用于定义工作流的文件,在我的环境下是.github/workflows/nextjs.yml,并在编译的时候提供环境变量,比如这样"]]},"created_time":1716985683696,"last_edited_time":1716985997416,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"76b636ae-3ba1-467a-8257-d820d91f519f":{"value":{"id":"76b636ae-3ba1-467a-8257-d820d91f519f","version":73,"type":"code","properties":{"title":[["- name: Build with Next.js\n run: ${{ steps.detect-package-manager.outputs.runner }} next build\n # Add this\n env:\n NEXT_PUBLIC_ASSET_PREFIX: /Portofolio"]],"language":[["HTML"]]},"created_time":1716985959476,"last_edited_time":1716986032763,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"61ae3e61-25f0-4f0f-b05e-f8c16a96b7e8":{"value":{"id":"61ae3e61-25f0-4f0f-b05e-f8c16a96b7e8","version":604,"type":"text","properties":{"title":[["添加的这一行,会在服务器端编译的过程中提供这个环境变量,从而保证编译后对于public文件夹下的静态资源访问正确,到这里,我们就已经完成了对于 Nextjs 项目的 Github Page 部署。"]]},"created_time":1716986035370,"last_edited_time":1716986107333,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"1a092113-c89c-4e12-b01d-221610815496":{"value":{"id":"1a092113-c89c-4e12-b01d-221610815496","version":38,"type":"sub_header","properties":{"title":[["后谈"]]},"created_time":1716986035478,"last_edited_time":1716986121105,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f33dfea5-7e23-42cb-8780-1e27f2d0dcb1":{"value":{"id":"f33dfea5-7e23-42cb-8780-1e27f2d0dcb1","version":1420,"type":"text","properties":{"title":[["细心的小伙伴可能发现,写死 "],["basePath",[["c"]]],[" "],["assetPrefix",[["c"]]],[" "],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],["这些变量,当你在本地dev环境开发时,你的首页会从"],["localhost:3000",[["c"]]],["变成"],["localhost:3000/Portofolio",[["c"]]],[" ,如果你能接受,那其实也还行,但如果想“不行,我在本地开发的时候,我就要在"],["localhost:3000",[["c"]]],["直接访问\n!”那你可以继续看下去(没错,说的就是我自己,我真的忍受不了每次从终端点开这个链接,还需要手动补全后面的路径)。答案是,你可以像"],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],[" 一样,再引入一个"],["NODE_ENV",[["c"]]],[" 来判断当前的开发环境,从而在生产环境使用子路径,但在开发环境不实用,此时"],["nextconfig",[["c"]]],[" 修改如下:"]]},"created_time":1716986121484,"last_edited_time":1716986816164,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"6e3b0acb-0544-40a7-91cb-c33f5db7e377":{"value":{"id":"6e3b0acb-0544-40a7-91cb-c33f5db7e377","version":29,"type":"code","properties":{"title":[["/** @type {import('next').NextConfig} */\nconst isProd = process.env.NODE_ENV === \"production\";\nconst nextConfig = {\n output: \"export\",\n basePath: isProd ? \"/Portofolio\" : \"\",\n assetPrefix: isProd ? \"/Portofolio/\" : \"\",\n images: {\n unoptimized: true,\n },\n env: {\n NEXT_PUBLIC_ASSET_PREFIX: isProd ? \"/Portofolio\" : \"\",\n },\n};\n\nexport default nextConfig;"]],"language":[["JavaScript"]]},"created_time":1716949365767,"last_edited_time":1716949376078,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"7d6e37c8-d4e0-4004-8cdc-942ffb521cc9":{"value":{"id":"7d6e37c8-d4e0-4004-8cdc-942ffb521cc9","version":71,"type":"text","properties":{"title":[["同时修改"],["img",[["c"]]],["标签的"],["src",[["c"]]],["如下"]]},"created_time":1716986582026,"last_edited_time":1716986591601,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"f20f86ed-f33c-4dcc-84b3-85936406ad21":{"value":{"id":"f20f86ed-f33c-4dcc-84b3-85936406ad21","version":152,"type":"code","properties":{"title":[["\"profile\"\n/"]],"language":[["HTML"]]},"created_time":1716986592670,"last_edited_time":1716987334895,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"0c0eef99-9dc9-49c8-b879-afd744cfaa95":{"value":{"id":"0c0eef99-9dc9-49c8-b879-afd744cfaa95","version":717,"type":"text","properties":{"title":[["你可能想问为什么?按理来说我在dev环境已经指定了"],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],["为空啊?这就是"],["Nextjs",[["c"]]],[" 的又一大坑,"],["Nextjs",[["c"]]],[" 的环境变量无法指定为空!(至少据我所知)如果你像这样试图指定为空,它会变成"],["undefined",[["c"]]],[" ,因而你需要通过"],["(process.env.NEXT_PUBLIC_ASSET_PREFIX || \"\")",[["c"]]],[" 这样的表达式体操来让"],["undefined",[["c"]]],[" 变成真正的空。"]]},"created_time":1716986651252,"last_edited_time":1716986762031,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"df693aea-0040-43f1-876e-fd43f7bb5f49":{"value":{"id":"df693aea-0040-43f1-876e-fd43f7bb5f49","version":1223,"type":"text","properties":{"title":[["此外,你还需要修改 Github Action 的流程定义文件,从而指定编译环境为 "],["production",[["c"]]],["。"]]},"created_time":1716949377965,"last_edited_time":1716986767311,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ee602031-0545-4249-a0ef-c684bf4f4e93":{"value":{"id":"ee602031-0545-4249-a0ef-c684bf4f4e93","version":88,"type":"code","properties":{"title":[["- name: Build with Next.js\n run: ${{ steps.detect-package-manager.outputs.runner }} next build\n env:\n NODE_ENV: production\n NEXT_PUBLIC_ASSET_PREFIX: /Portofolio"]],"language":[["YAML"]]},"created_time":1716949953467,"last_edited_time":1716949975205,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"ce0a6793-3863-424d-936e-4f059261f1eb":{"value":{"id":"ce0a6793-3863-424d-936e-4f059261f1eb","version":177,"type":"text","properties":{"title":[["于是,经过这么一番折腾,我们终于调好了环境!"]]},"created_time":1716950154513,"last_edited_time":1716986791417,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"aabd027e-0bcb-4ab3-9a1f-aca793487aa5":{"value":{"id":"aabd027e-0bcb-4ab3-9a1f-aca793487aa5","version":310,"type":"numbered_list","properties":{"title":[["在 Github Action 侧,我们通过 "],["basePath",[["c"]]],[" "],["assetPrefix",[["c"]]],[" "],["NEXT_PUBLIC_ASSET_PREFIX",[["c"]]],[" 三兄弟,完成了对"],["css",[["c"]]],[" "],["js",[["c"]]],[" "],["img",[["c"]]],[" 这些静态资源的路径补全;"]]},"created_time":1716986793250,"last_edited_time":1716986860739,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"a4bf6e14-b49a-480d-92fa-ba672089c9a6":{"value":{"id":"a4bf6e14-b49a-480d-92fa-ba672089c9a6","version":180,"type":"numbered_list","properties":{"title":[["在本地 dev 侧,我们将这三兄弟全部设为空,从而保持原有的根路径访问"]]},"created_time":1716986861149,"last_edited_time":1716986885377,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"a0b6b14e-17f2-4df4-b8ff-9b681fe04ece":{"value":{"id":"a0b6b14e-17f2-4df4-b8ff-9b681fe04ece","version":186,"type":"sub_header","properties":{"title":[["后后谈",[["m","dca29fb8-f230-4241-85bc-a45cf5860ce6"]]]]},"discussions":["dca29fb8-f230-4241-85bc-a45cf5860ce6"],"created_time":1716952946184,"last_edited_time":1716986900114,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"72562cc3-d9b0-4440-bd5b-33adfb9b699d":{"value":{"id":"72562cc3-d9b0-4440-bd5b-33adfb9b699d","version":139,"type":"text","properties":{"title":[["总结这篇博客查阅资料时,我查到了这个东西"]]},"created_time":1716986900924,"last_edited_time":1716986914376,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"1c7c643a-5656-49f4-a869-bf3289b3616a":{"value":{"id":"1c7c643a-5656-49f4-a869-bf3289b3616a","version":11,"type":"bookmark","properties":{"link":[["https://nextjs.org/docs/app/api-reference/next-config-js/images"]],"title":[["next.config.js Options: images"]],"description":[["Custom configuration for the next/image loader"]]},"format":{"bookmark_icon":"https://nextjs.org/favicon.ico","bookmark_cover":"https://nextjs.org/api/docs-og?title=next.config.js%20Options:%20images"},"created_time":1716952988842,"last_edited_time":1716952988843,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"739c9da9-03e1-405b-b196-d7b7c496321b":{"value":{"id":"739c9da9-03e1-405b-b196-d7b7c496321b","version":513,"type":"text","properties":{"title":[["由于你可以像这样定义"],["image loader",[["c"]]],[" :"]]},"created_time":1716952990064,"last_edited_time":1716986936382,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"50c4c9f9-1c4a-49cc-bc39-5d2a5fb4a10a":{"value":{"id":"50c4c9f9-1c4a-49cc-bc39-5d2a5fb4a10a","version":40,"type":"code","properties":{"title":[["export default function myImageLoader({ src, width, quality }) {\n return `https://example.com/${src}?w=${width}&q=${quality || 75}`\n}"]],"language":[["JavaScript"]]},"created_time":1716986937027,"last_edited_time":1716986944221,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"770e0fdd-9fd9-4d36-be07-0c71bfa7a1bd":{"value":{"id":"770e0fdd-9fd9-4d36-be07-0c71bfa7a1bd","version":334,"type":"text","properties":{"title":[["所以理论上,你也可以通过在imageLoader内部拼接src,从而补全路径,但笔者懒得写了,就先放到 todo List 吧。"]]},"created_time":1716953072104,"last_edited_time":1716987000655,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"1fb90465-bc13-42de-b7aa-7f9df1233aef":{"value":{"id":"1fb90465-bc13-42de-b7aa-7f9df1233aef","version":15,"type":"divider","created_time":1717036647752,"last_edited_time":1717036650416,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"5d410fe2-f595-44d2-a009-21a7764075c4":{"value":{"id":"5d410fe2-f595-44d2-a009-21a7764075c4","version":27,"type":"text","properties":{"title":[["成果展示:"]]},"created_time":1717036650414,"last_edited_time":1717036653968,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"585a070e-8d5d-4405-8710-3bd80405e37c":{"value":{"id":"585a070e-8d5d-4405-8710-3bd80405e37c","version":11,"type":"bookmark","properties":{"link":[["https://musherm.github.io/Portofolio/"]],"title":[["Musher's Portfolio"]],"description":[["Modern & Minimalist JS Mastery Portfolio"]]},"created_time":1717036696545,"last_edited_time":1717036696546,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"fc39e43b-a324-400a-8654-9d35cf2efd55":{"value":{"id":"fc39e43b-a324-400a-8654-9d35cf2efd55","version":3,"type":"text","created_time":1717036724683,"last_edited_time":1717036724683,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","last_edited_by_table":"notion_user","last_edited_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"collection":{"4126d965-c550-46af-bc34-c038f0103084":{"value":{"id":"4126d965-c550-46af-bc34-c038f0103084","version":7,"name":[["NOBELIUM Template"]],"schema":{"NX\\Q":{"name":"date","type":"date","description":""},"`gQ~":{"name":"type","type":"select","options":[{"id":"5aff2f95-fd1e-489b-8840-bf10bc9519cb","color":"purple","value":"Post"},{"id":"374d2bc6-a144-4832-8ca4-474aaae0ea1f","color":"orange","value":"Page"}]},"d]hq":{"name":"slug","type":"text"},"sD^m":{"name":"tags","type":"multi_select","options":[{"id":"b67fb051-ddd9-43b5-9fdf-7b7f97a2e056","color":"yellow","value":"Jekyll"},{"id":"2382b30f-9881-4a8b-ae7f-2d34979c4fb9","color":"pink","value":"Website"},{"id":"674b2636-c585-4057-8a6d-0d6ab9718f90","color":"blue","value":"Cooking"},{"id":"499d31ac-26f2-4fed-9ec4-17afe3c6d90d","color":"red","value":"Sociology"},{"id":"38611f8e-ab81-4a71-8d40-7bad1370b26a","color":"orange","value":"TEMP"},{"id":"1ad9233c-079a-44c7-98c3-24ed2faf1879","color":"purple","value":"Book"},{"id":"a3d8eb51-77ce-4e83-a9ae-68da9cee63fa","color":"default","value":"Design"},{"id":"87df7c95-06f0-477a-a530-14be415a1dcf","color":"gray","value":"React"},{"id":"76cb8fea-49e8-47c1-a982-b3a8a23d2278","color":"green","value":"Next.js"},{"id":"63e95905-41f5-4027-8bd4-330129476432","color":"brown","value":"TODO"},{"id":"6dbab06e-0532-484d-9c94-9be429b2abf8","color":"red","value":"Nobelium"},{"id":"a7dda041-f452-423c-b00f-dbe7402400ca","color":"pink","value":"JavaScript"}]},"wz|S":{"name":"summary","type":"text"},"title":{"name":"title","type":"title"},"f211bdc0-ee00-4186-9a7d-f68c055ec2ee":{"name":"status","type":"select","options":[{"id":"22460321-fea2-4c7c-b352-a674760780ac","color":"orange","value":"Idea"},{"id":"41d5f5c6-b53c-42bc-8e0f-fc9402048480","color":"yellow","value":"Draft"},{"id":"c7390b31-9fab-4e21-94ee-7e67ea077a97","color":"blue","value":"Revise"},{"id":"7abc61d4-b405-480d-b699-12588755fa65","color":"red","value":"Published"}]}},"icon":"🎟️","format":{"copied_from_pointer":{"id":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","table":"collection","spaceId":"b3580129-1025-4b78-9e73-0a6f39f464ab"},"collection_page_properties":[{"visible":false,"property":"NX\\Q"},{"visible":false,"property":"d]hq"},{"visible":false,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"visible":false,"property":"sD^m"},{"visible":false,"property":"wz|S"},{"visible":false,"property":"`gQ~"}]},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"file_ids":["6cf3dc36-2f98-4f0e-9679-1bdbb1485129","5520bd92-e709-4c0d-ad58-06923f23f7e9","624d393a-62e3-4464-a1bf-1c79ecd4fbda","d52f6766-3e32-4c3d-8529-46e1f214360f"],"copied_from":"47ddddc3-991e-4ade-a7a4-a99e37f4d3ff","migrated":true,"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"discussion":{"b0801ef6-274a-436e-bc37-38bafa6f9994":{"value":{"id":"b0801ef6-274a-436e-bc37-38bafa6f9994","version":2,"parent_id":"c62e81a1-03a9-4b5c-9a55-4e56867de3e4","parent_table":"block","resolved":false,"comments":["dd130b8f-1056-4e54-9c4e-35e0dfa1b7ad"],"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640","type":"default"},"role":"reader"},"dca29fb8-f230-4241-85bc-a45cf5860ce6":{"value":{"id":"dca29fb8-f230-4241-85bc-a45cf5860ce6","version":2,"parent_id":"a0b6b14e-17f2-4df4-b8ff-9b681fe04ece","parent_table":"block","context":[["后后谈",[["m","dca29fb8-f230-4241-85bc-a45cf5860ce6"]]]],"resolved":false,"comments":["62542805-4e86-4146-bf20-0629a0188fca"],"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640","type":"default"},"role":"reader"}},"comment":{"dd130b8f-1056-4e54-9c4e-35e0dfa1b7ad":{"value":{"id":"dd130b8f-1056-4e54-9c4e-35e0dfa1b7ad","version":4,"parent_id":"b0801ef6-274a-436e-bc37-38bafa6f9994","text":[["关键词:nextjs 静态资源 路径 子目录"]],"created_time":1716984319376,"last_edited_time":1716984300000,"parent_table":"discussion","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"},"62542805-4e86-4146-bf20-0629a0188fca":{"value":{"id":"62542805-4e86-4146-bf20-0629a0188fca","version":4,"parent_id":"dca29fb8-f230-4241-85bc-a45cf5860ce6","text":[["Todo"]],"created_time":1716987015600,"last_edited_time":1716987000000,"parent_table":"discussion","alive":true,"created_by_table":"notion_user","created_by_id":"4e783237-cc83-440e-9604-bac369009c55","space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"space":{},"collection_view":{"1df80a31-46e8-4fcd-b9a3-dde8ded944c9":{"value":{"id":"1df80a31-46e8-4fcd-b9a3-dde8ded944c9","version":11,"type":"table","name":"Default view","format":{"table_wrap":false,"table_properties":[{"width":416,"visible":true,"property":"title"},{"width":186,"visible":true,"property":"d]hq"},{"width":145,"visible":true,"property":"NX\\Q"},{"width":147,"visible":true,"property":"wz|S"},{"width":222,"visible":true,"property":"sD^m"},{"width":124,"visible":true,"property":"f211bdc0-ee00-4186-9a7d-f68c055ec2ee"},{"width":100,"visible":true,"property":"`gQ~"}],"table_frozen_column_index":-1},"parent_id":"0eb813c6-179c-43e0-8c12-27cc22341e33","parent_table":"block","alive":true,"page_sort":["b1e1d645-db95-42e5-8995-39a80eda6460","e8cd3732-dc1c-43ae-959a-a5a611ec098a","e876558d-e878-47f6-8c95-21be678990a5","5a971ded-d3c5-41be-bef9-ddfff48d43a2","8db8b240-e1c5-4dd7-bf74-72584d7a2ce0","daf94ca4-ec56-47a3-84ed-b1e2479acc4b","d1a2db9b-6820-421e-9b80-017ce7478587","67ea9f83-b9f6-416b-afcb-7c64f7533e6c","45939470-9819-47e8-b12b-999cfefa0aad","c60dc33d-8efb-44be-a863-7a87ad047932","fe4b8d5f-7c49-42c6-a7d5-1cb71c4f7e86","b7233a67-c367-4198-831e-f12089568d1f","4f3bf306-92c4-41b7-a43e-957129a1240a","6a789607-66cf-498e-9b32-eb3fa69a84f4","c9429034-dabd-4a25-8782-97f20c808a60","38c49fe2-37f8-4a7f-a99f-9edb9ddad4c2","474eb638-9f6b-46bf-8004-77668293f199","81d6dfab-69cb-43a0-aa04-e9725f0b67e1","7703d956-84db-46cd-b538-48eae1af68b5","9f937c73-dac9-4ed7-9b01-beefcb321f16","3cf9dcb9-e7db-406c-80ab-c65c11fbf906","5827ab53-e051-455b-b90a-3bdc20158c2c","fa7acd3b-dea9-4fb1-b859-5345f35163c6","696dfc48-62c3-494d-96d0-ec5fa84637e8","79df93cf-9b10-452e-bc62-f39e8cd2d124","9bb8e52d-c459-4528-b1b3-c2378207253a","5da038ef-f419-4a11-aa48-587b3787e040","b4a2c9d4-6a2c-49e6-988d-89a538dfe0f6","c374a479-5cc7-4c54-ba69-6a4d76dc25ad","d470fa67-0e7c-40d8-86ac-9b5a8be88dc8","986be38b-9780-4bb9-bdcd-4e361ddbd888","b7613f56-c2d4-4aae-b967-b7471ade86d0","e357d1fc-7466-4d6a-8d48-71b76ea97cdc","e1735855-4089-4af6-bd4d-0d59f7a76cb4","9b34581a-955a-4229-99d0-8f2a6d0e69ce","b4414811-0599-45cf-b047-fa95eac42d89","c28a8a01-911a-40a2-a607-d3af8cb24017","461d07ae-4b4a-49de-bdcb-341af1153201","3df59023-cb68-4a65-afd1-7f0b8c21cb57","0e3223d1-03df-40fb-90f9-cc8559d776b5","4f45b7d6-cd5b-46ab-b2a6-37ae20bf5f21","fa475a21-5f38-43d4-9a89-67c40b3129ae","97cbc634-fe3a-4b9b-9da6-ac4aaa94772f","8a0d34bc-7e8c-4a68-88a5-5276274f612a","623f8788-a20f-45fd-bb82-08935f59b44d","7ee398f0-450b-47cb-9b53-f5e7736590d2","eae9f077-591e-4841-903b-db395513c834","367d0f2a-0b10-4dbb-b53a-613152f124f9","398e2e28-3997-49bc-a138-0467d4da8531","8aaf4633-e879-44dc-82c8-3c9fb9d3a6f8","1eb5e5f2-8dc9-4ffc-b5e1-09b67be27a83","83465fb9-205b-41fc-83a6-424692ee0a0e","fb1d18d0-6403-4e8a-840e-134553748ff5","4407cb77-3838-4ba5-b474-f15222cd3dba","1880b0f2-e036-42d0-9550-0fb08a962397","d8d60bd6-33f6-458f-a7d6-209ef2fb05a1","29bf65ff-888b-4a76-a8dd-bf54f02c3864","bad1d4ae-fd4a-4671-ae94-dd53d94e0eae","0d59792d-db1c-4ae7-8d7c-4f013be40dcf","337dc259-2805-4b1c-a60f-1b3e6c7badb8","4b1b21a8-c278-4bc6-88f1-1a35d407f4d7","7946aba2-d6d0-45ef-8779-23fa15db8f2d","c18dbce6-9e8c-4f4b-b74a-0994e7c1bc3f","84aa87b7-39e7-493c-87b9-5cae4de95449","1446eadb-8c01-4295-be3a-ecf19361c143","fe8a7d94-e9ba-457d-8f19-10fe53e6ca3c","98a5a0b6-b07b-4065-a73f-2949ad28ac47","6efcebe0-a779-4ec2-a1cb-f77acbb36bf6","c62e81a1-03a9-4b5c-9a55-4e56867de3e4","5514a197-e266-4487-a3ce-95ae17f26bdb","51f3b1a2-a3d5-468a-b552-70d7b0c1a9cb","baacb561-6a62-4343-9e6a-bc1bba469a9c","9ca0671d-b580-4105-825c-d8ef4c531d84","d11cc5a5-b975-4a3a-9d78-739e3680b3fa","98540d41-1879-4bea-9bdf-fa17af5cc06e","f24edd31-035d-4744-9275-118e8751f2f9","975051d4-ebbc-4b3f-98cf-1a52e5e4761d","e5d98bee-b2d5-4b45-ab0b-b77da24aebe7","acac2668-1062-4e7a-b095-eda067da8413","179025c4-d8a8-4c47-b621-9fd6a6f3339b","d256e5ed-5eac-43bb-a32e-581774962c23","59520f7f-1fe9-4c70-b059-8655b93e85df","5692c8b3-efa6-4f19-ab2e-4574afc33f46","9c40a253-b9e8-42cd-8a99-62aaa9789a5e","fd348e41-3e72-42d2-8425-be67e8586a28","3128120c-366d-4937-a28a-f18a446f249b","a1d00689-b6f7-418b-888e-0b47edc21286","090eeb36-6c03-462f-9ada-d544c584641f","e97e229c-7a7c-4ce6-81f7-2cf8700e22ab","926771d9-3aab-4640-8dec-b1202f54aa69","b9a5c48f-1b00-4ae9-94bc-f683d6b393ad","30602d25-a696-40ee-b0fa-c252403391cf","a5da67e2-2ac7-4c3a-8833-50d78f853f9b","cf2532d2-7c86-4027-ae70-a81784ff4769","c1e63240-b7fe-4e0e-b753-78a9210b7779","81581b92-d191-4010-8c4f-e2c0e0b4a4ee","69e2cb5f-2c4a-408a-95b5-9d03f8ccfab3","b5b9b1d9-377b-4053-b110-988a9ec54af7","9a223272-0900-4cc3-a503-2515824da515","7c88ce0f-c4be-4335-abfe-adaaa2c6c99e","79bf7035-9dfd-4193-b7d1-cd578a30ac85","a453aa9d-324d-448f-94f0-c8adb4692241","1030c439-2997-45a7-90ca-f2df5de62e3e","1235234b-cfee-4611-8a9b-c6b32b379585","710ff2f6-c05e-4403-b72a-512bb27ab51f","019d0c55-59ee-4247-90c8-5f9017c37ba5","d105e4c2-dfdb-4c58-b8f5-54e182894431","95585600-97d8-4d2c-bf0c-6b9164dbee54","51e53e64-e6dd-4fd6-8062-5d4455f0a1cb","f4ec684b-e5f1-44e9-a8a7-aca27f7ca6f3","177fa228-9099-4dd5-8969-c67f9c78bd0c","d5ab0d7a-0123-473f-84d4-81740defb9b4","548f6d36-c509-4b79-9c4b-59f227c7f550","c0901673-4f5e-4e51-ad87-0217f2d33a0c","0787f8d6-dc99-47c6-946e-2b008814bebc","0ade5216-1103-486a-aff0-a709ff825b02","a2c4dd21-985c-497d-b421-c2d8a9ec0eeb","908a498c-f7e3-4668-8afd-f179a027b4d9","4945e5c3-033d-467c-a8b3-b1479c1fdf0a","854f4584-28d5-43bd-938e-88d0957c78e3","6a6574f8-d63d-4fed-99c5-38f3df0364ac"],"query2":{"filter":{"operator":"and"},"aggregations":[{"property":"title","aggregator":"count"}]},"space_id":"01ff42de-5b53-40d7-a69e-999e3574e640"},"role":"reader"}},"notion_user":{},"collection_query":{},"signed_urls":{}},"emailHash":"568c024e516219d57a6ef037a7cc3d32"},"__N_SSG":true} \ No newline at end of file diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/path-middle2.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/path-middle2.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/path-middle2.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/path-middle2.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/search.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/search.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/search.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/search.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/tag/Next.js.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/tag/Next.js.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/tag/Next.js.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/tag/Next.js.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/tag/Nobelium.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/tag/Nobelium.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/tag/Nobelium.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/tag/Nobelium.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/tag/React.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/tag/React.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/tag/React.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/tag/React.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/tag/Website.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/tag/Website.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/tag/Website.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/tag/Website.json diff --git a/_next/data/9jRdE7D5YNzDAbBxxbiy4/use-nobelium-to-construct-your-blog-from-notion.json b/_next/data/rKeQK-aFhfc5v06FzUaGU/use-nobelium-to-construct-your-blog-from-notion.json similarity index 100% rename from _next/data/9jRdE7D5YNzDAbBxxbiy4/use-nobelium-to-construct-your-blog-from-notion.json rename to _next/data/rKeQK-aFhfc5v06FzUaGU/use-nobelium-to-construct-your-blog-from-notion.json diff --git a/_next/static/9jRdE7D5YNzDAbBxxbiy4/_ssgManifest.js b/_next/static/9jRdE7D5YNzDAbBxxbiy4/_ssgManifest.js deleted file mode 100644 index 3c0462812..000000000 --- a/_next/static/9jRdE7D5YNzDAbBxxbiy4/_ssgManifest.js +++ /dev/null @@ -1 +0,0 @@ -self.__SSG_MANIFEST=new Set(["\u002F","\u002Fsearch","\u002Ftag\u002F[tag]","\u002F[slug]","\u002Fpage\u002F[page]"]);self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB() \ No newline at end of file diff --git a/_next/static/9jRdE7D5YNzDAbBxxbiy4/_buildManifest.js b/_next/static/rKeQK-aFhfc5v06FzUaGU/_buildManifest.js similarity index 100% rename from _next/static/9jRdE7D5YNzDAbBxxbiy4/_buildManifest.js rename to _next/static/rKeQK-aFhfc5v06FzUaGU/_buildManifest.js diff --git a/_next/static/9jRdE7D5YNzDAbBxxbiy4/_middlewareManifest.js b/_next/static/rKeQK-aFhfc5v06FzUaGU/_middlewareManifest.js similarity index 100% rename from _next/static/9jRdE7D5YNzDAbBxxbiy4/_middlewareManifest.js rename to _next/static/rKeQK-aFhfc5v06FzUaGU/_middlewareManifest.js diff --git a/_next/static/rKeQK-aFhfc5v06FzUaGU/_ssgManifest.js b/_next/static/rKeQK-aFhfc5v06FzUaGU/_ssgManifest.js new file mode 100644 index 000000000..816b901b8 --- /dev/null +++ b/_next/static/rKeQK-aFhfc5v06FzUaGU/_ssgManifest.js @@ -0,0 +1 @@ +self.__SSG_MANIFEST=new Set(["\u002F","\u002Fsearch","\u002Fpage\u002F[page]","\u002Ftag\u002F[tag]","\u002F[slug]"]);self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB() \ No newline at end of file diff --git a/dev-dependencies.html b/dev-dependencies.html index 8cbb1bb2e..256243698 100644 --- a/dev-dependencies.html +++ b/dev-dependencies.html @@ -1,4 +1,4 @@ -Next.js 踩坑记(2)——开发依赖

😶‍🌫️ Next.js 踩坑记(2)——开发依赖

date
May 29, 2024
slug
dev-dependencies
status
Published
tags
Next.js
React
Website
summary
Nextjs迷踪之——我只改了github action中的NODE_ENV=’production’,为什么编译就崩了?
type
Post

引言

在写个人作品集这个项目时,由于遇到了让人非常恼火的路径问题,于是有了这篇博客
这篇博客是在 notion 上完成写作的(包括现在这篇),再加之我有过了解,有很多项目支持直接从 notion 构建自己的个人博客,作为一个前端开发者,怎么能没有自己的博客呢?于是开始选型,辗转之下找到了这篇文章:
作者对各种从 notion 生成博客的项目进行了调研,最终选用了 nobelium 这一项目:
好了,看来烦人的选型工作已经有人替我完成了,话不多说,开整!由于这个项目原型使用的是 Vercel 部署,但本着省钱的原则,作者和我都选择使用 Github Page 进行部署,这就要求我们将项目编译成静态页面,作者对此进行了一定的改造,所以本博客的部署实际上使用了作者改造的项目:
在根据教程进行了一番操作之后,我们又遇到了那个熟悉的问题:静态资源路径错误!
这是什么历史的循环?我因为出现静态资源路径错误,写了一篇博客专门介绍怎么解决这个问题,并且顺便部署一个博客把这篇文章放上去,但又在部署博客的过程中又遇到了静态资源报错。。。 😅
但是没关系!很幸运,这又是一个 Nextjs 项目,而我又恰巧刚刚学会如何解决,这不是手拿把掐?开整!

开始解决问题

根据经验,我把nextconfig改成了这样:
const isProd = process.env.NODE_ENV === "production";
+Next.js 踩坑记(2)——开发依赖

😶‍🌫️ Next.js 踩坑记(2)——开发依赖

date
May 29, 2024
slug
dev-dependencies
status
Published
tags
Next.js
React
Website
summary
Nextjs迷踪之——我只改了github action中的NODE_ENV=’production’,为什么编译就崩了?
type
Post

引言

在写个人作品集这个项目时,由于遇到了让人非常恼火的路径问题,于是有了这篇博客
这篇博客是在 notion 上完成写作的(包括现在这篇),再加之我有过了解,有很多项目支持直接从 notion 构建自己的个人博客,作为一个前端开发者,怎么能没有自己的博客呢?于是开始选型,辗转之下找到了这篇文章:
作者对各种从 notion 生成博客的项目进行了调研,最终选用了 nobelium 这一项目:
好了,看来烦人的选型工作已经有人替我完成了,话不多说,开整!由于这个项目原型使用的是 Vercel 部署,但本着省钱的原则,作者和我都选择使用 Github Page 进行部署,这就要求我们将项目编译成静态页面,作者对此进行了一定的改造,所以本博客的部署实际上使用了作者改造的项目:
在根据教程进行了一番操作之后,我们又遇到了那个熟悉的问题:静态资源路径错误!
这是什么历史的循环?我因为出现静态资源路径错误,写了一篇博客专门介绍怎么解决这个问题,并且顺便部署一个博客把这篇文章放上去,但又在部署博客的过程中又遇到了静态资源报错。。。 😅
但是没关系!很幸运,这又是一个 Nextjs 项目,而我又恰巧刚刚学会如何解决,这不是手拿把掐?开整!

开始解决问题

根据经验,我把nextconfig改成了这样:
const isProd = process.env.NODE_ENV === "production";
 module.exports = {
   basePath: isProd ? "/nobelium" : "",
   assetPrefix: isProd ? "/nobelium/" : "",
@@ -81,4 +81,4 @@
     "url": "https://github.com/craigary/nobelium/issues",
     "email": "i@craigary.net"
   }
-}
我突然发现,原来报错里找不到的tailwindcss被标记成了开发依赖!当我在NODE_ENV里指定环境为生产环境时,就不会安装这个包,从而导致编译错误!解决的办法也很简单,把这几个包都挪到dependencies里就行了。

总结

这次的问题主要还是拿来主义在作祟,本来项目就是傻瓜式的,我能拿来直接用,部署步骤里面也没写我要改package.json,我为什么要关注这个呢?所以我自然也不会知道有些东西被标记成了开发依赖(我在此之前甚至不知道有这个东西)
至于成果展示嘛,你现在看到的这篇博客,就是我部署的博客了,如果你看到这里,wish you have a good day!

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file +}
我突然发现,原来报错里找不到的tailwindcss被标记成了开发依赖!当我在NODE_ENV里指定环境为生产环境时,就不会安装这个包,从而导致编译错误!解决的办法也很简单,把这几个包都挪到dependencies里就行了。

总结

这次的问题主要还是拿来主义在作祟,本来项目就是傻瓜式的,我能拿来直接用,部署步骤里面也没写我要改package.json,我为什么要关注这个呢?所以我自然也不会知道有些东西被标记成了开发依赖(我在此之前甚至不知道有这个东西)
至于成果展示嘛,你现在看到的这篇博客,就是我部署的博客了,如果你看到这里,wish you have a good day!

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file diff --git a/feed.xml b/feed.xml index 29ec39976..fa2264095 100644 --- a/feed.xml +++ b/feed.xml @@ -4,7 +4,7 @@ Musher's Frontend Coding Blog / 無限進步 - Mon, 17 Jun 2024 01:53:09 GMT + Mon, 17 Jun 2024 03:28:50 GMT https://validator.w3.org/feed/docs/rss2.html https://github.com/jpmonette/feed zh-CN diff --git a/index.html b/index.html index abffd6076..8620ccd78 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Musher's Frontend Coding Blog \ No newline at end of file +Musher's Frontend Coding Blog \ No newline at end of file diff --git a/path-middle.html b/path-middle.html index 6412c16cf..2344ea450 100644 --- a/path-middle.html +++ b/path-middle.html @@ -1,4 +1,4 @@ - Next.js 踩坑记(1)——路径体操

😶‍🌫️ Next.js 踩坑记(1)——路径体操

date
May 29, 2024
slug
path-middle
status
Published
tags
React
Next.js
Website
summary
如何愉快的将你的 Nextjs 项目部署上 Github Page?
type
Post

引言

前段时间入坑了 React 开发,学习了基本语法后就决定找个项目跟着写写,由于b站上相关的资源重复率实在是太高了,我实在不想再写一个苍穹外卖之类的东西,于是在 YouTube 上找到了该视频,该项目是一个作品集项目,我觉得作为我 React 的 startup 非常不错,而且这个网页的审美也很合我的品味。
Build and Deploy an Amazing Developer Portfolio with Next JS and Framer Motion
Learn how to build and deploy a modern developer portfolio with animations using Next.js. Perfect for showcasing your web development skills! + Next.js 踩坑记(1)——路径体操

😶‍🌫️ Next.js 踩坑记(1)——路径体操

date
May 29, 2024
slug
path-middle
status
Published
tags
React
Next.js
Website
summary
如何愉快的将你的 Nextjs 项目部署上 Github Page?
type
Post

引言

前段时间入坑了 React 开发,学习了基本语法后就决定找个项目跟着写写,由于b站上相关的资源重复率实在是太高了,我实在不想再写一个苍穹外卖之类的东西,于是在 YouTube 上找到了该视频,该项目是一个作品集项目,我觉得作为我 React 的 startup 非常不错,而且这个网页的审美也很合我的品味。

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file +}
所以理论上,你也可以通过在imageLoader内部拼接src,从而补全路径,但笔者懒得写了,就先放到 todo List 吧。

成果展示:
 

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file diff --git a/path-middle2.html b/path-middle2.html index 2752195c2..b1d1d9a8a 100644 --- a/path-middle2.html +++ b/path-middle2.html @@ -1,4 +1,4 @@ -Next.js 踩坑记(3)——路径体操(2)

😶‍🌫️ Next.js 踩坑记(3)——路径体操(2)

date
Jun 12, 2024
slug
path-middle2
status
Published
tags
Next.js
React
Website
summary
进一步讨论 nextjs 中静态资源的路径问题
type
Post

前言

Next.js 踩坑记(1)——路径体操 中,我们已经讨论了在 Nextjs 中,当我们部署在一个“子路径”时,如何处理静态资源路径失效的问题,今天我们进一步探讨,内容总结如下:
  1. 使用nextconfig中的publicRuntimeConfig 来定义路径,相比于使用环境变量而言更优雅;
  1. publicRuntimeConfig 只能在服务端组件中获取,但往往需要在客户端使用,如何解决该矛盾?

使用publicRuntimeConfig 定义子路径

在后续的开发过程中,我通过在nextconfig中的publicRuntimeConfig 定义一份一模一样的basePath和 assetPath,就像这样:
/** @type {import('next').NextConfig} */
+Next.js 踩坑记(3)——路径体操(2)

😶‍🌫️ Next.js 踩坑记(3)——路径体操(2)

date
Jun 12, 2024
slug
path-middle2
status
Published
tags
Next.js
React
Website
summary
进一步讨论 nextjs 中静态资源的路径问题
type
Post

前言

Next.js 踩坑记(1)——路径体操 中,我们已经讨论了在 Nextjs 中,当我们部署在一个“子路径”时,如何处理静态资源路径失效的问题,今天我们进一步探讨,内容总结如下:
  1. 使用nextconfig中的publicRuntimeConfig 来定义路径,相比于使用环境变量而言更优雅;
  1. publicRuntimeConfig 只能在服务端组件中获取,但往往需要在客户端使用,如何解决该矛盾?

使用publicRuntimeConfig 定义子路径

在后续的开发过程中,我通过在nextconfig中的publicRuntimeConfig 定义一份一模一样的basePath和 assetPath,就像这样:
/** @type {import('next').NextConfig} */
 const isProd = process.env.NODE_ENV === 'production'
 const subBasePath = '/Promptopia'
 const subAssetPrefix = subBasePath + '/'
@@ -60,4 +60,4 @@
 import React, { useContext, useState } from 'react'
 import basePathContext from '@/context/basePathContext'
 
-const basePath = useContext(basePathContext)

总结

也许这个问题我们可以通过哪里需要使用路径,哪里就调用环境变量来解决,但这并不只解决了一个简单的子路径部署问题,而是解决了“仅客户端可用”和“仅服务端可用”的矛盾问题,我们通过这样的方式,可以实现在客户端使用任意的“仅服务端可用变量”。

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file +const basePath = useContext(basePathContext)

总结

也许这个问题我们可以通过哪里需要使用路径,哪里就调用环境变量来解决,但这并不只解决了一个简单的子路径部署问题,而是解决了“仅客户端可用”和“仅服务端可用”的矛盾问题,我们通过这样的方式,可以实现在客户端使用任意的“仅服务端可用变量”。

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file diff --git a/search.html b/search.html index a782c07fe..d12b4b6cb 100644 --- a/search.html +++ b/search.html @@ -1 +1 @@ -Musher's Frontend Coding Blog \ No newline at end of file +Musher's Frontend Coding Blog \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 20eb81d7e..9751cfd95 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1,15 +1,15 @@ -/daily0.72024-06-17T01:53:09.285Z -//searchdaily0.72024-06-17T01:53:09.285Z -//tag/Next.jsdaily0.72024-06-17T01:53:09.285Z -//tag/Reactdaily0.72024-06-17T01:53:09.285Z -//tag/Websitedaily0.72024-06-17T01:53:09.285Z -//tag/Nobeliumdaily0.72024-06-17T01:53:09.285Z -//Promptopia-dev-note-search-implementationdaily0.72024-06-17T01:53:09.285Z -//path-middle2daily0.72024-06-17T01:53:09.285Z -//use-nobelium-to-construct-your-blog-from-notiondaily0.72024-06-17T01:53:09.286Z -//TODOdaily0.72024-06-17T01:53:09.286Z -//path-middledaily0.72024-06-17T01:53:09.286Z -//dev-dependenciesdaily0.72024-06-17T01:53:09.286Z +/daily0.72024-06-17T03:28:50.565Z +//searchdaily0.72024-06-17T03:28:50.565Z +//tag/Next.jsdaily0.72024-06-17T03:28:50.565Z +//tag/Reactdaily0.72024-06-17T03:28:50.565Z +//tag/Websitedaily0.72024-06-17T03:28:50.565Z +//tag/Nobeliumdaily0.72024-06-17T03:28:50.565Z +//Promptopia-dev-note-search-implementationdaily0.72024-06-17T03:28:50.565Z +//path-middle2daily0.72024-06-17T03:28:50.565Z +//use-nobelium-to-construct-your-blog-from-notiondaily0.72024-06-17T03:28:50.565Z +//TODOdaily0.72024-06-17T03:28:50.566Z +//path-middledaily0.72024-06-17T03:28:50.566Z +//dev-dependenciesdaily0.72024-06-17T03:28:50.566Z \ No newline at end of file diff --git a/tag/Next.js.html b/tag/Next.js.html index 1de466ce2..ac52211a2 100644 --- a/tag/Next.js.html +++ b/tag/Next.js.html @@ -1 +1 @@ -Musher's Frontend Coding Blog \ No newline at end of file +Musher's Frontend Coding Blog \ No newline at end of file diff --git a/tag/Nobelium.html b/tag/Nobelium.html index 446d9b798..40268431a 100644 --- a/tag/Nobelium.html +++ b/tag/Nobelium.html @@ -1 +1 @@ -Musher's Frontend Coding Blog \ No newline at end of file +Musher's Frontend Coding Blog \ No newline at end of file diff --git a/tag/React.html b/tag/React.html index 934f9e7f4..1d7b1d19b 100644 --- a/tag/React.html +++ b/tag/React.html @@ -1 +1 @@ -Musher's Frontend Coding Blog \ No newline at end of file +Musher's Frontend Coding Blog \ No newline at end of file diff --git a/tag/Website.html b/tag/Website.html index 803db4d66..23a085afd 100644 --- a/tag/Website.html +++ b/tag/Website.html @@ -1 +1 @@ -Musher's Frontend Coding Blog \ No newline at end of file +Musher's Frontend Coding Blog \ No newline at end of file diff --git a/use-nobelium-to-construct-your-blog-from-notion.html b/use-nobelium-to-construct-your-blog-from-notion.html index 03f385070..df0e5587f 100644 --- a/use-nobelium-to-construct-your-blog-from-notion.html +++ b/use-nobelium-to-construct-your-blog-from-notion.html @@ -1,4 +1,4 @@ - 使用 Nobelium 从 Notion 构建你的个人博客

😶‍🌫️ 使用 Nobelium 从 Notion 构建你的个人博客

date
Jun 3, 2024
slug
use-nobelium-to-construct-your-blog-from-notion
status
Published
tags
Nobelium
Next.js
summary
从 0 开始介绍如何使用 Nobelium 构建你的个人博客,并部署到 Github Page
type
Post

Nobelium 主体部分

建议直接使用我的 fork,该仓库基于https://github.com/IMBlues/nobelium,在原先的基础上进行了改造,支持了部署在子目录下(比如https://musherm.github.io/nobelium),同时加入了一些开关来控制首页的行为。
fork 一份到自己的仓库里,然后 git clone 下来以便后续更改。

构建你的 notion 页

由于 nobelium 直接从 notion 获取并生成博客,自然需要从一个公开的 notion 页面获取内容,所以需要复制以下页面到自己的 notion 里,并将其设置为公开(也有不公开的办法,但这种方法需要获取 notion 登录的 token,比较麻烦,不推荐)
  1. 在复制过来的自己的 notion 仓库里,检查 share 设定,确保其设置为 Publish。
  1. 获取你的 notionPageId(即图中[id].notion.site/后面,?v前面的部分)
  1. 将其填入你 clone 下来的项目中的 blog.config.js 中的notionPageId 字段
  1. 顺便完善其他相关字段,比如 author, title 等
notion image
在我复制的 notion 页中,database 中的各个字段都有什么作用?
  • status 和 type 共同决定了这篇文章是否会出现在你最终构建的博客中,只有status === ‘Published’ && type === ‘post’ 才会出现在你的博客里,前者不为 Published 代表这篇博客还在写作状态中,没有准备好发表;后者如果是 page,则代表它并不是一篇博客。

阶段性检验

使用 npm install 命令安装好依赖后,使用 npm run dev 在本地运行开发环境,做了如上设置后,你应该已经能够得到一个在本地运行的博客系统,并且已经能抓取到你设置的 notion 页内的博文。

部署到 Github Page

部署到 Github Page,首先需要前往你的仓库→settings→Pages→选择部署方式Deploy from branch,如果你已经进行过推送,则这里应该已经有 gh-pages 这个分支(如果没有,请 push 一次触发预先定义的 github action,如果 action 编译失败也没关系,后面我们还需要进行修改),选择从 gh-pages 这个分支进行构建。

子路径名称修改(如果你直接 fork 了我的 repo,可以跳过这部分)

前面提到过,作者改造的仓库能够支持部署在子目录下的 github page,比如https://musherm.github.io/nobelium,但每个人的子目录都不一样,所以你需要进行修改,如果你没有自己的域名,你的域名应该是[id].github.io/[repo],其中,[id]是你的 github 昵称,[repo] 是你的仓库名称,你需要对后者进行修改。
如何知道你的 repo 叫什么名字?
从你的项目主页后面的名字就可以得知。
notion image
打开你的 next.config.js ,你应该能在开头看到如下字段
const isProd = process.env.NODE_ENV === "production";
+ 使用 Nobelium 从 Notion 构建你的个人博客

😶‍🌫️ 使用 Nobelium 从 Notion 构建你的个人博客

date
Jun 3, 2024
slug
use-nobelium-to-construct-your-blog-from-notion
status
Published
tags
Nobelium
Next.js
summary
从 0 开始介绍如何使用 Nobelium 构建你的个人博客,并部署到 Github Page
type
Post

Nobelium 主体部分

建议直接使用我的 fork,该仓库基于https://github.com/IMBlues/nobelium,在原先的基础上进行了改造,支持了部署在子目录下(比如https://musherm.github.io/nobelium),同时加入了一些开关来控制首页的行为。
fork 一份到自己的仓库里,然后 git clone 下来以便后续更改。

构建你的 notion 页

由于 nobelium 直接从 notion 获取并生成博客,自然需要从一个公开的 notion 页面获取内容,所以需要复制以下页面到自己的 notion 里,并将其设置为公开(也有不公开的办法,但这种方法需要获取 notion 登录的 token,比较麻烦,不推荐)
  1. 在复制过来的自己的 notion 仓库里,检查 share 设定,确保其设置为 Publish。
  1. 获取你的 notionPageId(即图中[id].notion.site/后面,?v前面的部分)
  1. 将其填入你 clone 下来的项目中的 blog.config.js 中的notionPageId 字段
  1. 顺便完善其他相关字段,比如 author, title 等
notion image
在我复制的 notion 页中,database 中的各个字段都有什么作用?
  • status 和 type 共同决定了这篇文章是否会出现在你最终构建的博客中,只有status === ‘Published’ && type === ‘post’ 才会出现在你的博客里,前者不为 Published 代表这篇博客还在写作状态中,没有准备好发表;后者如果是 page,则代表它并不是一篇博客。

阶段性检验

使用 npm install 命令安装好依赖后,使用 npm run dev 在本地运行开发环境,做了如上设置后,你应该已经能够得到一个在本地运行的博客系统,并且已经能抓取到你设置的 notion 页内的博文。

部署到 Github Page

部署到 Github Page,首先需要前往你的仓库→settings→Pages→选择部署方式Deploy from branch,如果你已经进行过推送,则这里应该已经有 gh-pages 这个分支(如果没有,请 push 一次触发预先定义的 github action,如果 action 编译失败也没关系,后面我们还需要进行修改),选择从 gh-pages 这个分支进行构建。

子路径名称修改(如果你直接 fork 了我的 repo,可以跳过这部分)

前面提到过,作者改造的仓库能够支持部署在子目录下的 github page,比如https://musherm.github.io/nobelium,但每个人的子目录都不一样,所以你需要进行修改,如果你没有自己的域名,你的域名应该是[id].github.io/[repo],其中,[id]是你的 github 昵称,[repo] 是你的仓库名称,你需要对后者进行修改。
如何知道你的 repo 叫什么名字?
从你的项目主页后面的名字就可以得知。
notion image
打开你的 next.config.js ,你应该能在开头看到如下字段
const isProd = process.env.NODE_ENV === "production";
 module.exports = {
   basePath: isProd ? "/nobelium" : "",
   assetPrefix: isProd ? "/nobelium/" : "",
@@ -64,4 +64,4 @@
     },
     { id: 3, name: locale.NAV.SEARCH, to: "/search", show: true },
   ];
同时在 blogConfig 里添加了两个控制选项,来把这两个东西关掉。
showAbout: false,
-showSurfing: false,
 

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file +showSurfing: false,
 

© Musher 2019 - 2024

powered by nobelium

\ No newline at end of file