Реле: как получить соединение из магазина при использовании с order_by или другими параметрами? - PullRequest
0 голосов
/ 15 октября 2018

У меня есть вопрос относительно ConnectionHandler, используемого в программе обновления.Я читаю пример и обнаружил

import {ConnectionHandler} from 'relay-runtime';

// The `friends` connection record can be accessed with:
const user = store.get(userID);
const friends = RelayConnectionHandler.getConnection(
 user,                        // parent record
 'FriendsFragment_friends'    // connection key
 {orderby: 'firstname'}       // 'filters' that is used to identify the connection
);
// Access fields on the connection:
const edges = friends.getLinkedRecords('edges');

Таким образом, соединения могут принять {orderby: 'firstname'}.Какое поле для заказа может принимать имя, отчество или полное имя?Поэтому, если я сортирую по имени, я должен обновить соединение с помощью orderby = firstname, а когда я сортирую по фамилии, я должен получить соединение по orderby = lastname ... Как узнать, в каком порядке я нахожусь, или я могу просто обновить«текущий»?

1 Ответ

0 голосов
/ 16 октября 2018

@ Junchao, я вижу, что вы взяли этот пример с реле документов, верно?Передав это orderby, вы на самом деле не говорите Relay, чтобы упорядочить для вас ребра на firstname, но этот параметр - filters, который используется для идентификации соединения, как сказано в комментарии.Если вы указали filter в своем запросе, вы также должны передать фильтр на getConnection, иначе вы его не найдете.

:)

...