Вы можете использовать опцию -Xlinker.
g++ -o foobar -Xlinker -start-group -Xlinker libA.a -Xlinker libB.a -Xlinker libC.a -Xlinker -end-group
ALMOST равно
g++ -o foobar -Xlinker -start-group -Xlinker libC.a -Xlinker libB.a -Xlinker libA.a -Xlinker -end-group
Осторожно!
include работает только с массивом ... но в вашем случае вы не используете include () для массива, поэтому он не работает. используя эту
for(const requests of product.requests)
, вы выбираете эту нижнюю часть всего массива
{ _id: 5c3ed473dee9b803b2282cc6,
userId: 5c375260a6f58308e510711a,
firstName: 'Joe',
motivation: 'some text' }
, после чего, используя эту строку
if (requests.userId.includes(userId)
, вы пытаетесь использовать не массив объектов как массив, который является неправильным. попробуйте просмотреть запросы. пользователь. это означает, что вы обращаетесь к ранее выбранному свойству объекта userId. таким же образом use может получить доступ ко всем данным этого объекта, как этот
<% for(const requests of product.requests) { %>
requests.motivation
requests.firstname
requests._id
<% } %>
, как мудрый ... Итак, чтобы достичь того, что вы хотите, вы можете использовать такой подход ... учитывая, что у вас есть userID , который вы хотите проверить по значению, которое вы ищете в этом массиве объектов, попробуйте сделать это следующим образом.
<% for(const requests of product.requests) { %>
<% if (requests.userId.toString()==userId) ) { %>
//User exists.. now you can do what you want if the user exists
<% } %>
<% } %>
проблема была в том, как вы думаете о массиве объектов и обращаетесь к нему. Это должно решить вашу проблему ...:)