Я запустил новый проект Laravel 9, установил машинописный текст и изменил файл vite.config.js, чтобы он указывал на app.ts вместо app.js. Все это работало и работает, но когда я пытаюсь связать файл сценария '/public/js/index.ts' с одним из моих представлений, возникает следующая ошибка:
Отказано в выполнении сценария с «http://127.0.0.1:8000/js/index.ts», поскольку его тип MIME («video/mp2t») не является исполняемым.
Нажав на ссылку файла, я ясно вижу, что он загружается браузером, и если я просто изменю файл с .ts на .js, все будет работать как задумано, поэтому, должно быть, проблема в том, что TypeScript не компилирует мой файл, хотя я не знаю, почему. Вот мой файл tsconfig.json:
{
"compilerOptions": {
"target": "es5",
"module": "es2020",
"moduleResolution": "node",
"baseUrl": "./",
"strict": true,
"skipLibCheck": true,
"noImplicitAny": false,
"allowSyntheticDefaultImports": true,
},
"include": ["/public/js/**/*", "/resources/js/**/*"],
}
Обновлено: добавлен файл vite.config.js:
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [
laravel({
input: ['resources/css/app.css', 'resources/scss/app.scss', 'resources/js/app.ts'],
refresh: true,
}),
],
resolve:{
alias: {
"$": "jQuery"
},
}
});
@apokryfos Я добавил файл vite.config.js, есть ли здесь что-нибудь, что может вызвать такую проблему?
Я узнал это:
У меня был файл index.ts
внутри /public/js/
, когда я вставил его /resources/js
и импортировал с помощью @vite
, все заработало нормально!
как у вас с конфигом вите? Кажется, он пытается отправить файл .ts непосредственно в браузер, а не транспилировать его.