接收到错误信息”读取属性'indexOf'未定义“。我在视图中获取旅程护照ID,但护照ID并未进入该功能。另外我没有得到我的console.logs的一些奇怪的原因。任何帮助都会非常棒!错误信息msg“无法读取未定义的属性'indexOf'
这里是我的HTML它呼吁 'userLikes' 过滤器:
(全码处:https://github.com/cdtdesign/TCP-Express/blob/master/views/blog.html)
<a class="like-button" title="Like">
<i class="fa fa-heart {{journey.passport_id | userLikes}}"></i>
</a>
{% if user.passport_id == journey.passport_id %}
<a href="#modal-text/{{ String(journey._id) }}#update" title="Edit">
<i class="fa fa-pencil journeyEditButton"></i>
</a>
<a title="Delete">
<i class="fa fa-close journeyDeleteButton" style="font-size:2.875rem;" data-journey-id="{{ String(journey._id) }}"></i>
</a>
{% endif %}
这里的JS导致了问题:
(满码:https://github.com/cdtdesign/TCP-Express/blob/master/routes/blog.js)
if (req.user) {
swig.setFilter('userLikes', function(journeyPassportID) {
if (req.user.journeys_liked.indexOf(journeyPassportID) != -1) {
return 'liked';
}
});
另外,从我的旅程模型的代码,其中passport_id来源:
var journeySchema = new Schema({
uuid: {
type: String,
default: uuid.v4()
},
travel_token: {
type: String,
default: randomstring.generate()
},
passport_id: String,
traveler_name: String,
title: String,
date: Date,
body: String,
description_filename: String,
header_image_filename: String,
users_who_like: Array,
tags: String,
shortlink: String,
deleted_at: String,
created_at: {
type: Date,
default: Date.now
},
updated_at: {
type: Date,
default: Date.now
}
});
请给我们完整的代码。 –
'req.user.journeys_liked'未定义。因此错误信息。你的问题中没有足够的上下文让任何人都能猜出为什么会这样。 –
@Jits我在视图中添加了更多的上下文和代码,其中过滤器在旅程护照ID上被调用。请让我知道,如果这是足够的信息/代码来帮助解决我的问题。对不起,我是一个完整的小白菜!除了没有提供足够的信息,我可能不会提出正确的问题。我很抱歉。感谢任何有见识的人! – Chris