#reactjs #mongoose #webpack #redux #react-router
#reactjs #мангуст #webpack #redux #реагировать-маршрутизатор
Вопрос:
Я уже настроил отношения «многие ко многим», похожие на социальную сеть. Проблема, с которой я сталкиваюсь, заключается в создании одного значка, который может определять, подключен ли пользователь уже, и если он является значком следования, он должен вместо этого измениться на значок следования.
Это фрагмент кода, который будет решать, отображать ли значок какого типа (последователь или следующий).
ConnectionHandle(Array, _id){
return Array.map(function(el, index){
console.log('chicken');
if(el === User_id){
return(
<div className="btn btn-warning" onClick={() => this.props.disconnectUser({id: _id})}>- user</div>
);
} else {
return (
<div className="btn btn-info" onClick={() => this.props.connectUser({id: _id})}> user</div>
);
}
},this);
};
Приведенный выше код будет находиться в списке li ниже:
return this.props.users.map(function(el, index){
return (
<li className="list-group-item" key={ index }>
<Link to={`/users/${el._id}`} activeClassName="active">
{el.email}
<div className="pull-sm-right">Join on {this.joinDate(el.createdAt)}</div>
{this.entryNum(el.entries.length)}
{this.userNum(el.followers.length)}
<div>{el.follow.length} follows</div>
</Link>
{this.ConnectionHandle(el.followers, el._id)}
</li>
)
}, this)
}
Серверная часть протестирована с помощью postman, она работает, как и ожидалось, при установлении отношений «многие ко многим». Их связь также будет обновляться с помощью метода жизненного цикла.
Мне просто нужна недостающая часть для преобразования значков из follow back в followed и наоборот.
Комментарии:
1. Какой значок вы имеете в виду? Также вам следует избегать указания имени переменной
Array
, поскольку оно скрывает встроенный массив2. о, хорошо, я не был уверен в этом. Я назвал его условно. В любом случае, я хочу создать элемент button, который будет переключаться между текстом ‘ user’ и ‘- user’ всякий раз, когда пользователь нажимает на него. Я пытаюсь создать личный побочный проект, чтобы понять динамику социальной сети, когда вы соединяете бэкэнд с интерфейсом. Кнопка должна вести себя как «добавить друга» facebook после того, как пользователь нажмет и mongoose обновит db, новое состояние должно отражать это изменение. @AnthonyGarcia .
3. любые советы будут оценены. Я довольно долго искал ответы в Google, и я действительно хочу воплотить эту функцию в жизнь. @AnthonyGarcia . Заранее спасибо. Я прикрепил ссылку к своему репозиторию на случай, если кто-то захочет получить более четкую картину. все находится в общей папке. Репозиторий Github: github.com/boyboi86/API_basic_random