Ошибка определения {invoke} при разработке приложения в Rust с использованием библиотеки Touri и Vite с React, TypeScript + SVG Framework
Я использую Tauri в своем проекте React, и после настройки всех необходимых библиотек я столкнулся с ошибкой при попытке использовать функцию invoke из модуля @tauri-apps/api. Ошибка гласит:
Module "@tauri-apps/api" has no exported member "invoke".
Несмотря на то, что я установил все необходимые зависимости (например, @tauri-apps/api и @tauri-apps/cli), функция invoke не распознается и вызывает ошибку в браузере. Вот мой package.json:
{
"name": "bondify-client",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "tsc -b && vite build",
"lint": "eslint .",
"preview": "vite preview",
"tauri": "tauri"
},
"dependencies": {
"@tauri-apps/api": "^2.0.2",
"react": "^18.3.1",
"react-dom": "^18.3.1"
},
"devDependencies": {
"@eslint/js": "^9.11.1",
"@tauri-apps/cli": "^2.0.2",
"@types/node": "^22.7.5",
"@types/react": "^18.3.10",
"@types/react-dom": "^18.3.0",
"@vitejs/plugin-react-swc": "^3.5.0",
"eslint": "^9.11.1",
"eslint-plugin-react-hooks": "^5.1.0-rc.0",
"eslint-plugin-react-refresh": "^0.4.12",
"globals": "^15.9.0",
"typescript": "^5.5.3",
"typescript-eslint": "^8.7.0",
"vite": "^5.4.8"
}
}
Here is tsx code:
import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';
import App from './App.tsx';
import './index.css';
// When using the Tauri API npm package:
import { invoke } from '@tauri-apps/api';
invoke('greet', { name: 'World' })
// `invoke` returns a Promise
.then((response) => console.log(response))
createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
</StrictMode>,
)
Я использую Node.js версии 20.x. В чем может быть причина того, что invoke не распознается?
Я уже пробовал воссоздать проект с нуля и следовал официальным инструкциям Tauri, но проблема осталась.