En klientkomponent importerar en modul märkt med `server-only`, vilket Next.js inte tillåter.
Förklaring
server-only-paketet markerar en modul som exklusivt server-side. Om modulen importeras av en klientkomponent, direkt eller indirekt, kastar Next.js ett byggtidsfel. Det är ett verktyg för att förhindra att serverkod av misstag hamnar i klientbundlen.
Användbara platser för server-only är databasanslutningar, moduler som läser hemliga miljövariabler, och funktioner som anropar interna API:er.
Vanliga orsaker
En klientkomponent importerar en funktion från en fil som innehåller import 'server-only'. En delad utility-fil är märkt server-only och importeras bredare än tänkt.
Lösning
Flytta importen till en server-komponent, Server Action, eller Route Handler:
// lib/db.js
import 'server-only'; // garanterar att filen aldrig bundlas till klienten
export async function getUser(id) {
return db.users.findById(id);
}Om delar av modulen behövs på klienten, dela upp den i en server-del och en klient-del.