Пользовательский шаблон страницы - PullRequest
0 голосов
/ 15 декабря 2018

Я пытаюсь добавить пользовательскую страницу, которая не будет связана с определенным типом фрагмента или другим набором данных.Он будет использоваться для выполнения действий для создания отчетов и обработки / отображения данных, поэтому он должен быть достаточно автономным.Я хочу, чтобы это был тип страницы, поэтому он будет обрабатываться в навигации так же, как любая другая страница.У меня в основном это работает, но я сталкиваюсь с проблемой - независимо от того, как я настроил это, когда я пытаюсь перейти к экземпляру создаваемой страницы, он всегда ищет шаблон в lib / modules / apostrophe-pages/ views / pages вместо папки модуля.

В этом случае я сейчас вызываю test-item модуля (переименую, как только выясню, в чем проблема).Итак, у меня есть папка с именем lib / modules / test-item, с index.js и views / index.html.Я также попытался переименовать шаблон в папке представлений в show.html и test-item.html, чтобы убедиться, что это не проблема с именами.Вот как модуль сконфигурирован в index.js:

module.exports = {
    name: 'test-item',
    extend: 'apostrophe-custom-pages',
    construct: function(self, options) {
        //more logic stuff
    }
}

Кроме того, если я добавляю поле в модуль, он появляется, когда я пытаюсь создать новую страницу с типом test-item,поэтому я знаю, что сам модуль загружается.

В app.js модуль загружается с этим:

'test-item': {},

Тип страницы не добавляется в список типовв диалоговом окне новой страницы, если я не добавлю его в модуль apostrophe-pages, поэтому я добавил его так:

types: [
    {
        name: 'test-item',
        label: 'Test Page'
    }
]

Нужно ли делать что-то другое, чтобы модуль загружал шаблон из lib /modules / test-item / views / index.html вместо того, чтобы выдавать ошибку, когда не удается найти шаблон в lib / modules / apostrophe-pages / views / pages / test-item.html?

Спасибо!

1 Ответ

0 голосов
/ 15 декабря 2018

apostrophe-custom-pages шаблоны все еще живут на уровне проекта lib/modules/apostrophe-pages/views/pages/MODULE-NAME.html.

Если вы пытаетесь полностью модулировать пользовательскую страницу как модуль npm, вы можете создать модуль на основе improve, который может добавить представление к модулю apostrophe-pages.

...