Apostrophe CMS: ошибка определения типа виджетов Pieces - PullRequest
0 голосов
/ 17 декабря 2018

Я создал базовую контактную форму, следуя документации Apostrophe CMS, и теперь она работает, но теперь я хочу удалить «лишний» код с помощью модуля apostrophe -iece-submit-widgets.Я попытался использовать его как в файле app.js, так и при создании модуля contact-form-submit-widgets, и получаю следующую ошибку:

Тип apostrophe-piece-submit-widgets не определен.

Это совершенно новый пустой проект, и единственный код, который я добавил, - это схема модуля контактной формы, которая выглядит следующим образом:

const async = require('async');

module.exports = {
  extend: 'apostrophe-pieces',
  name: 'contact-form',
  label: 'Contact Form',
  alias: 'contactForm',
  addFields: [
    {
      name: 'title',
      type: 'string',
      label: 'Full Name',
      required: true
    },
    {
      name: 'email',
      type: 'string',
      label: 'Email',
      required: true
    },
    {
      name: 'message',
      type: 'string',
      label: 'Message',
      textarea: true,
      required: true
    }
  ],
  permissionsFields: false,

  construct: (self, options) => {
    self.setSubmitSchema = () => {
      self.submitSchema = self.apos.schemas.subset(self.schema, [
        'title',
        'email',
        'message'
      ]);
    };

    self.submit = (request, callback) => {
      const piece = {};
      return async.series([
        callback => self.apos.schemas.convert(request, self.schema, 'form', request.body, piece, callback),
        callback => self.insert(request, piece, { permissions: false }, callback)
      ], callback);
    };
  },

  afterConstruct: self => {
    self.setSubmitSchema();
  }
};

Любая помощь будет принята с благодарностью.

Уэйн

...