suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Umgeschriebener Titel: Verwendung der Hybrid-Rendering-Technologie (serverseitig + clientseitig).

Ich möchte eine E-Commerce-Plattform erstellen, die das Rendern der Seite auf dem Server (Berechnen des Anfangszustands auf dem Server) erfordert, aber React- oder Vue-Komponenten zum Filtern verwendet und den Anfangszustand ändert, indem die gefilterten Daten mithilfe von API-Aufrufen abgerufen werden . < /p>

Kennen Sie JavaScript-Frameworks, die die Kombination von serverseitigem und clientseitigem Rendering in einer Route/Seite unterstützen?

P粉725827686P粉725827686320 Tage vor439

Antworte allen(1)Ich werde antworten

  • P粉212114661

    P粉2121146612024-02-26 09:59:07

    Next JS 可以实现这一点。它支持服务器端和客户端渲染。

    这是一个结合了两者的示例:

    import { useState } from 'react'
    import { useRouter } from 'next/router'
    
    function EventList({ eventList }) {
      const [events, setEvents] = useState(eventList)
      const router = useRouter()
    
      const fetchSportsEvents = async () => {
        const response = await fetch('http://localhost:4000/events?category=sports')
        const data = await response.json()
        setEvents(data)
        router.push('/events?category=sports', undefined, { shallow: true })
      }
      return (
        <>
          
          

    List of events

    {events.map(event => { return (

    {event.id} {event.title} {event.date} | {event.category}

    {event.description}


    ) })} ) } export default EventList export async function getServerSideProps(context) { const { query } = context const { category } = query const queryString = category ? 'category=sports' : '' const response = await fetch(`http://localhost:4000/events?${queryString}`) const data = await response.json() return { props: { eventList: data } } }

    Antwort
    0
  • StornierenAntwort