Один из шаблонов, использованных для этого, включает в себя метасвойство на самом маршруте , а затем проверяет, установлено ли это свойство в ловушке:
If(!user.isLoggedIn && to.route.meta.requiresAuth)
next({name: 'login'});
else
next();
И так как Ваши страницы входа в систему, регистрации и забытого пароля не требуют аутентификации, вы прерываете цикл
Существует две возможности:
Используя setIndexWidget
, но записи Trolltech:
Эта функция должна только использоваться для отображения статического содержания в видимой области, соответствующей объекту данных. Если Вы хотите отобразить пользовательский динамический контент или реализовать пользовательский виджет редактора, разделите QItemDelegate на подклассы вместо этого.
(И это повреждает шаблон Модели/Представления …),
Или использование делегата paint
метод. Но здесь необходимо реализовать все, любят, позволил/отключил элементы сами.
Один способ получить автоматическое поведение редактирования состоит в том, чтобы назвать setEditTriggers представления () функцией с QAbstractItemView:: значение AllEditTriggers.
Для отображения содержания данного столбца определенным способом смотрите на QAbstractItemView:: setItemDelegateForColumn (). Это позволит Вам указать пользовательского делегата только к тем объектам, для которых нужен он. Однако это автоматически не создаст виджет редактора для каждого из них (могли в принципе быть тысячи из них), но Вы могли использовать делегата для рендеринга каждого объекта способом, который заставляет его быть похожим на виджет редактора.
QAbstractItemModel:: виртуальная функция флагов вызвана к тесту, если объект доступен для редактирования (см. QT:: ItemIsEditable). Смотрите на Создание Модели, Доступной для редактирования в Документации по программированию Модели/Представления.
Я не вижу простой способ сделать это, но Вы смогли справляться при помощи делегата. Я честно не знаю точно, как это работало бы, но необходимо смочь получить что-то работа, если Вы достаточно стараетесь. Если Вы получаете надлежащего делегата, необходимо смочь установить его на целом представлении, одной ячейке представления, или просто столбце или строке.