当尝试将我的 Sveltekit 站点部署到 Vercel 时,我遇到了 npm 身份验证问题。当创建网络应用程序并将其推送到存储库时,最初工作正常。
npm 创建 svelte@latest my-app
添加一些依赖项(DaisyUI 和 Tailwind css)并执行 npm install 后,它开始出现部署错误。
这是项目的package.json
{
"name": "reactive-tut-site",
"version": "0.0.1",
"private": true,
"scripts": {
"dev": "vite dev",
"build": "vite build",
"preview": "vite preview",
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
},
"devDependencies": {
"@sveltejs/adapter-auto": "^2.0.0",
"@sveltejs/kit": "^1.5.0",
"autoprefixer": "^10.4.14",
"postcss": "^8.4.23",
"svelte": "^3.54.0",
"svelte-check": "^3.0.1",
"tailwindcss": "^3.3.2",
"tslib": "^2.4.1",
"typescript": "^5.0.0",
"vite": "^4.3.0"
},
"dependencies": {
"daisyui": "^2.51.6"
},
"type": "module"
}
简洁的配置文件:
import adapter from '@sveltejs/adapter-auto';
import { vitePreprocess } from '@sveltejs/kit/vite';
/** @type {import('@sveltejs/kit').Config} */
const config = {
// Consult https://kit.svelte.dev/docs/integrations#preprocessors
// for more information about preprocessors
preprocess: vitePreprocess(),
vite: {
optimizeDeps: {
entries: []
}
},
kit: {
adapter: adapter()
}
};
export default config;
删除我的本地 package-lock.json 并推送此更改以触发 vercel 部署/构建解决了问题!远程 vercel 构建只需要执行新的 npm 安装来创建新的包锁,并且构建成功:D