🔧 Update search worker initialization to use Vite's ?worker syntax for proper bundling and improve error handling
This commit is contained in:
@@ -402,24 +402,25 @@ let searchWorkerRequestId = 0;
|
|||||||
const initSearchWorker = () => {
|
const initSearchWorker = () => {
|
||||||
if (!searchWorker) {
|
if (!searchWorker) {
|
||||||
try {
|
try {
|
||||||
const workerUrl = new URL('../workers/search.worker.js', import.meta.url);
|
// Use Vite's ?worker syntax for proper bundling
|
||||||
console.log('🔧 Creating worker with URL:', workerUrl.href);
|
import('../workers/search.worker.js?worker').then(module => {
|
||||||
searchWorker = new Worker(workerUrl, { type: 'module' });
|
searchWorker = new module.default();
|
||||||
console.log('✅ Worker created successfully');
|
console.log('✅ Worker created successfully');
|
||||||
|
|
||||||
searchWorker.onmessage = handleSearchWorkerMessage;
|
searchWorker.onmessage = handleSearchWorkerMessage;
|
||||||
searchWorker.onerror = error => {
|
searchWorker.onerror = error => {
|
||||||
console.error(
|
console.error('❌ Worker error:', error.message);
|
||||||
'❌ Worker error:',
|
operationProgress.value.active = false;
|
||||||
error.message,
|
operationProgress.value.message = 'Search error: ' + error.message;
|
||||||
error.filename,
|
};
|
||||||
error.lineno
|
|
||||||
);
|
console.log('✅ Worker event handlers attached');
|
||||||
|
}).catch(error => {
|
||||||
|
console.error('❌ Failed to import worker:', error);
|
||||||
operationProgress.value.active = false;
|
operationProgress.value.active = false;
|
||||||
operationProgress.value.message = 'Search error: ' + error.message;
|
operationProgress.value.message = 'Failed to initialize search';
|
||||||
};
|
searchWorker = null;
|
||||||
|
});
|
||||||
console.log('✅ Worker event handlers attached');
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('❌ Failed to create worker:', error);
|
console.error('❌ Failed to create worker:', error);
|
||||||
operationProgress.value.active = false;
|
operationProgress.value.active = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user