Vue2: реквизит установлен и обновляется динамически, а шаблон - нет? - PullRequest
0 голосов
/ 23 июня 2018

Я новичок в Vue. Я все еще учусь и S.O. Сообщество действительно ускорило это.

Я начал создавать более сложные компоненты после выяснения некоторых базовых основ и некоторых более сложных вещей (например, передача данных от дочерних элементов через несколько вложенных компонентов, что невозможно сделать с помощью v-модели).

Я столкнулся с ошибкой. Это происходит в 2 случаях, но я не понимаю, почему. Инспектор Vue показывает, что данные обновляются динамически. Шаблон и / или вычисленное значение просто не обновляются, и я не могу понять, почему.

Я потратил два часа, пытаясь сократить это до меньшего MWE, но я не могу воспроизвести ошибку без меньшей сложности (я думаю, что это связано с неприглядными компонентами Vue, которые зависят от данных, передаваемых через более чем 1 компонент) .

** М.В.Э. **

Поскольку есть несколько компонентов, я предоставляю MWE через Code Sandbox:

https://codesandbox.io/s/mqoy658v9x

где видно, что это довольно простая таблица

enter image description here

Описание компонентов

  • DataTable: основной компонент для рендеринга таблицы.
  • DataTableCaptionSort: показывает список сортировки данных
  • DataTableCell: ячейка в таблице
  • DataTableFilter: фильтр ...
  • DataTableHeader: сопоставление компонентов по полям
  • DataTableHeaderCell: ячейка заголовка - рядом с ней должен отображаться значок, если отсортирован
  • DataTableRow: сопоставление компонентов по полям для каждой записи

Компонент DataTable ожидает объект, который напоминает базу данных, то есть каждый ключ является идентификатором записи, а его значение является записью. Каждая запись - это объект, ключами которого являются поля данных.

** Жук **

Ошибка, как указано в заголовке, заключается в том, что два из вышеупомянутых компонентов содержат данные, которые динамически корректно изменяются, а шаблоны или вычисленные значения - нет.

Проблемными компонентами являются DataTableHeaderCell и DataTableCaptionSort. Как видно, нажатие на заголовок переключает сортировку (через цикл возрастания, убывания, а не сортировки). В зависимости от отсортированного значения в ячейке заголовка должна отображаться стрелка вверх или стрелка вниз. Аналогично, заголовок должен представлять собой список, показывающий порядок сортировки, например, х (вверх) у (вниз)

Ни то, ни другое.

Может кто-нибудь помочь мне разобраться, что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...