Реагировать на механизм неявного отображения

Вам нужно будет узнать имена полей в форме PDF. Получите поля и затем прочитайте их значение.

string pdfTemplate = "my.pdf";
PdfReader pdfReader = new PdfReader(pdfTemplate);
AcroFields fields = pdfReader.AcroFields.Fields;
string val = fields.GetField("fieldname");

Очевидно, что в приведенном выше коде имя поля - это имя поля формы PDF, а метод GetField возвращает строковое представление этого значения. Здесь - статья с примером кода, который вы, вероятно, могли бы использовать. Он показывает, как вы можете читать и писать поля формы с помощью iTextSharp.

0
задан Nikita Vlasenko 28 March 2019 в 22:04
поделиться

2 ответа

Компоненты высшего порядка - это функции, которые «улучшают» компоненты, передаваемые в качестве параметра. Чтобы понять, откуда берутся реквизиты, давайте посмотрим, как будет выглядеть такой компонент.

Вот наш основной компонент, который будет передан в HoC:

function TodoList(props) {
  return (
    <div>We have {props.todos.length} tasks to do!</div>
  );
}

И теперь мы можем использовать наш HoC для создания нового «расширенного» компонента, который предотвращает отображение этого сообщения, когда нет Никаких оставленных задач:

const EnhancedTodoList = withTodosNull(TodoList);

Затем мы можем использовать этот новый компонент для рендеринга сообщения (или нет, если задач нет):

<EnhancedTodoList todos={someTodos} />

Как Вы можете видеть, EnhancedTodoList является первым компонентом, который получает todos. Затем он решает, следует ли передавать реквизиты в TodoList или возвращать null, когда нет никаких задач.

Тоды явно передаются из компонента, который представляет HoC. EnhancedTodoList действует как фильтр для TodoList.

0
ответ дан Selenir 28 March 2019 в 22:04
поделиться

Этот метод называется компонентами высшего порядка (HOCs) и является способом расширения компонентов с некоторыми дополнительными функциями.

Сначала это может выглядеть проще, если переписать его, используя обычные функции вместо функций со стрелками:

function withTodosNull(Component) {
  return function(props) {
    if (!props.todos) {
      return null;
    } else {
      return <Component {...props} />
    }
  }
}

withTodosNull принимает компонент и возвращает новый компонент. Если этот новый компонент, который возвращается, получает todos реквизит, компонент, переданный в HOC, будет визуализирован со всеми реквизитами. Если todos не указано как опора, null будет воспроизведено.

0
ответ дан Tholle 28 March 2019 в 22:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: