479e328e7cbda38b1c8a082490c0b7100da57000
- Refactored ExtrasSelector to include VAT information for each extra, enhancing clarity for users. - Removed unused extras data from configuratorData.js to streamline the codebase. - Updated GrowTentKonfigurator to dynamically retrieve extras from cached data, ensuring accurate pricing and VAT display for selected items. - Improved UI layout for price and VAT information across various components for better user experience.
Schnellstart
Voraussetzungen
- Node.js herunterladen: nodejs.org - LTS-Version installieren
- VSCode herunterladen: code.visualstudio.com - Stabile Version installieren
Entpacken & Doppelklick auf start-dev-seedheads.bat - das Skript wird:
- Abhängigkeiten automatisch installieren falls nötig
- Entwicklungsserver mit API-Proxy zu seedheads.de starten
- Browser öffnen auf http://localhost:9500
Socket Connection Optimization
The application uses Socket.IO for real-time communication with the server. To improve initial loading performance, sockets are now connected lazily:
- Sockets are created with
autoConnect: falseand only establish a connection when:- The first
emitis called on the socket - An explicit connection is requested via the context methods
- The first
Usage
// In a component
import React, { useContext, useEffect } from 'react';
import SocketContext from '../contexts/SocketContext';
import { emitAsync } from '../utils/socketUtils';
const MyComponent = () => {
const { socket, socketB } = useContext(SocketContext);
useEffect(() => {
// The socket will automatically connect when emit is called
socket.emit('someEvent', { data: 'example' });
// Or use the utility for Promise-based responses
emitAsync(socket, 'getData', { id: 123 })
.then(response => console.log(response))
.catch(error => console.error(error));
}, [socket]);
return <div>My Component</div>;
};
Benefits
- Reduced initial page load time
- Connections established only when needed
- Automatic fallback to polling if WebSocket fails
- Promise-based utilities for easier async/await usage
Languages
JavaScript
99.8%