Я установил shadcn/ui в свой шаблон Vite, следуя документации. Но компилятор, похоже, не распознал псевдонимы. Примечание. Typescript имеет несколько файлов конфигурации, а именно: tsconfig.json, tsconfig.app.json и tsconfig.node.json. Первоначально ключ опции «compilerOptions» был определен не в исходном файле tsconfig, а в двух других файлах. Поэтому я продублировал его, чтобы включить конфигурацию псевдонима в исходный файл.
// tsconfig.json
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"]
}
},
"files": [],
"references": [
{
"path": "./tsconfig.app.json"
},
{
"path": "./tsconfig.node.json"
}
]
}
// vite.config.ts
import path from "path";
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
// https://vitejs.dev/config/
export default defineConfig({
plugins: [react()],
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
},
},
});
Если не помогло, можете проверить этот вопрос stackoverflow.com/questions/66043612/…
Да, я это сделал, используя сочетание клавиш CTRL + SHIFT + P.
в vite.config.ts
попробуйте поставить вместо path.resolve(__dirname, "./src")
просто /src
вот так src: '/src', у меня это работает
Спасибо за ссылку. Я попробовал использовать самый популярный ответ (набравший наибольшее количество голосов), но это все равно не сработало. Я также попробовал ваше последнее предложение, пока ничего
Проблема видимо была в файлах tsconfig. Параметр paths должен был быть установлен как в файле tsconfig.app.json, так и в простом tsconfig.json, чтобы компилятор ts правильно разрешал путь и чтобы shadcnui мог устанавливать компоненты в правильный каталог на основе конфигураций простого tsconfig.
//tsconfig.json
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"]
}
},
"files": [],
"references": [
{
"path": "./tsconfig.app.json"
},
{
"path": "./tsconfig.node.json"
}
]
}
// tsconfig.app.json
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"]
}
},
"include": ["src"]
}
Вы пытались перезапустить сервер TS из кода VS?