Если вам нужно пропустить реквизит через цепочку из нескольких детей, используйте контекст.
Здесь - пример CodeSandbox.
Относительно того, когда и как использовать контекст, проверьте эту документацию.
Ну, это могло бы помочь понять, каков кортеж, во-первых:
http://en.wikipedia.org/wiki/Tuple
Python является самым известным тому, что имел поддержку первого класса Кортежей, хотя некоторые другие языки делают также (F#)
http://diveintopython3.ep.io/native-datatypes.html#tuples
и конечно!
Кортежник определяет контракт для вещей, которые знают, как управлять конкретным представлением части данных при условии, что это представление EntityMode (режим объекта , по существу, определяющий, какое представление).
Если данный фрагмент данных рассматривается как структура данных, то туплайзер - это то, что знает, как :
- создать такие данные структура соответствующим образом
- извлекает значения из и вставляет значения в такую структуру данных
Например, данный фрагмент данных может быть представлен как класс POCO. Здесь это представление, а режим объекта - POCO. Кортеж для режимов сущности POCO будет знать, как :
- создать структуру данных, вызывая конструктор POCO
- , извлекает и вводит значения через {{ 1}} геттеры / сеттеры, или с помощью прямого доступа к полю и т. Д.
Та же самая часть данных может также быть представлена как структура DOM с помощью туплайзера { {1}}, связанный с режимом объекта XML, который будет генерировать экземпляры XmlElement в качестве структуры данных и знает, как получить доступ к значениям как либо вложенные элементы XmlElements, либо как атрибуты XmlAttributes.
В словах Фабио Мауло :
Кортеж определяет, как преобразовать значение свойства в его постоянное представление, и наоборот, значение столбца в его представление в памяти и EntityMode. определяет, какой туплайзер используется.
Некоторые вещи, которые можно делать с помощью настраиваемых туплайзеров: