schema.Object
Define un mapeo de objeto plano cuyos valores deben normalizarse en Entities. Nota: el mismo comportamiento puede definirse con la sintaxis abreviada: { ... }
definition: obligatorio Una definición de las entidades anidadas dentro de este objeto. Por defecto es un objeto vacío. No necesitas definir ninguna clave de tu objeto aparte de las que contienen otras entidades. Todos los demás valores se copiarán a la salida normalizada.
consejo
Los Objects tienen miembros conocidos estáticamente. Para Objects sin límite (claves string arbitrarias), usa Values
Métodos de instancia
define(definition): Al usarlo, ladefinitionpasada se fusionará con la definición original pasada al constructor deObject. Este método suele ser útil para crear referencias circulares en el schema.
Uso
Fixtures
GET /users
{"users":[{"id":"123","name":"Beth"}]}
▶UsersPage.tsx
import { Entity, RestEndpoint, schema } from '@data-client/rest'; import { useSuspense } from '@data-client/react'; class User extends Entity { id = ''; name = ''; } const getUsers = new RestEndpoint({ path: '/users', schema: new schema.Object({ users: new schema.Array(User) }), }); function UsersPage() { const { users } = useSuspense(getUsers); return ( <div> {users.map(user => ( <div key={user.pk()}>{user.name}</div> ))} </div> ); } render(<UsersPage />);
Resultado
Store▶