Next.js修復「模組未找到」錯誤

在進行Next.js變數的一些清理工作時,我遇到了這個奇怪的問題: Module not found: Error: Can't resolve 'net' 你可能會遇到類似的錯誤,提示缺少了一個核心的Node.js模組。 請勿執行npm install net或其他類似的操作。如果你已經嘗試過,請執行npm uninstall刪除這些模組。 問題的原因是:Next.js嘗試在前端運行後端代碼。 在我的案例中,是由於使用了DOMPurify庫。我在組件內部使用它,但實際上我應該在getStaticProps()方法中使用它。 這個方法在構建時在Node環境運行,而該庫剛好需要在該環境下運行。

如何在 Next.js 中解析 Markdown

我有一個包含 Markdown 內容的欄位,然後我想在 Next.js 的頁面上將其顯示出來。 我使用了 marked、dompurify 和 jsdom 。以下是一個在 Next.js 的動態頁面中用於渲染項目描述的示例。 請注意,由於 DOMPurify.sanitize() 需要在伺服器端調用,因為它假設我們在 Node.js 環境中,所以我將它放在 getStaticProps() 中: import { useState, useEffect } from 'react' import Head from 'next/head' import Link from 'next/link' import { useRouter } from 'next/router' import { getJob, getJobs } from 'lib/data.js' import prisma from 'lib/prisma' import marked from 'marked' import createDOMPurify from 'dompurify' import { JSDOM } from 'jsdom' export default function Item({ item }) { return <p>{item....