пожалуйста, как я могу добавить опцию времени выполнения, чтобы отключить проверку или это предупреждение - PullRequest
2 голосов
/ 23 января 2020

Я создаю контактную форму, которая отображает некоторые сообщения на экране, чтобы пользователь знал, что форма была успешно отправлена, но я всегда получаю сообщение об ошибке в моем терминале git. Ниже приведено сообщение об ошибке.

Рули: доступ запрещен для разрешения свойства «сообщение», поскольку оно не является «собственным свойством» своего родителя. Вы можете добавить опцию времени выполнения, чтобы отключить проверку или это предупреждение: см. https://handlebarsjs.com/api-reference/runtime-options.html#options -to-control-prototype-access для подробностей

Ниже указан сервер. js и сообщение. код руля;

app.post('/contactUs',function(req,res){
    console.log(req.body);
    //res.send('thanks');
    const newMessage = {
        fullname: req.body.fullname,
        email: req.body.email,
        message: req.body.message,
        date: new Date()
    }


    new Message(newMessage).save(function(err, message){
        if (err){
            throw err;
        }else{
            Message.find({}).then(function(messages){
                if(messages){                    
                    res.render('newmessage',{
                        title: 'Sent',
                        messages:messages
                    });
                }else{
                    res.render('noMessage',{
                        title: 'Not found'
                    });
                }
            });
        }

    });

});


<h1>Thank you for contacting</h1>
{{#each messages}}
<p>{{fullname}}</p>
<p>{{email}}</p>
<p>{{message}}</p>
<small>{{date}}</small>
<hr>
{{else}}
<p>No messages</p>
{{/each}}
<a href="/contact"><button class="btn btn-success">Contact Again</button></a>

Ответы [ 2 ]

0 голосов
/ 29 апреля 2020

Просто используйте точно такую ​​же версию "express -handlebars", которая была показана в руководстве. Последняя версия руля вызывает проблему. По крайней мере, занимаясь этим, работал на меня.

0 голосов
/ 01 марта 2020

Это может происходить из-за последней версии Handlebars, но это можно решить, добавив зависимость к рулю.

npm i -D handlebars@4.5.0

...