Я создал базовую контактную форму, следуя документации 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();
}
};
Любая помощь будет принята с благодарностью.
Уэйн