首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何通过点击前台按钮在mongoDB上添加收藏?

如何通过点击前台按钮在mongoDB上添加收藏?
EN

Stack Overflow用户
提问于 2021-04-08 13:13:30
回答 1查看 62关注 0票数 0

我正在构建一个聊天应用程序,其中我需要添加更多的房间(组)。我已经为数据库使用了MongoDB。

这是我的架构。

代码语言:javascript
复制
import mongoose from "mongoose";

const Schema = mongoose.Schema( {
      message: String,
      name: String,
      timestamp: String,
      received: Boolean,
});

const messageContent = mongoose.model('messageContent', Schema);
                                
export default messageContent;

我可以通过在Mongodb.com上轻松地添加集合,但我想使用前端的一个按钮来添加它。

这是前台,我做了一个按钮并onClicking它,一个提示出现了,我们必须写下房间的名称。但是在那之后,我的代码给了我一个错误。

代码语言:javascript
复制
import { Avatar } from '@material-ui/core';
import React from 'react';
import mongoose from "mongoose";
import "./SidebarChat.css";
import Schema from "./messages";

function SidebarChat({adddNewChat}) {

    const db = mongoose.connection;

    const createChat = e => {
        const roomname = prompt("Add a new chat name");

        if(roomname){
            console.log("roomName is created : ", roomname);
            mongoose.model('room', Schema);
        }
    }

    return !adddNewChat ? (
        <div className="sidebarChat">
            <Avatar />
            <div className="sidebarChat__right">
                <h2>Room Name</h2>
                <p>Last Message</p>
            </div>
        </div>
    ) :
    (
        <div className="sidebarChat" onClick={createChat}>
            <h2> Add new Chat</h2>
        </div>
    )
}

export default SidebarChat

请告诉我怎么做。

EN

回答 1

Stack Overflow用户

发布于 2021-04-08 14:07:11

把react和mongoose放在一起似乎不是一个好方法。

这是因为"react“预计会在火狐、chrome、...etc等浏览器上运行。而且这些浏览器并不完全支持"mongoose“的功能,反之亦然。

除了模式和验证文档之外,

Mongoose的浏览器库不支持保存文档、查询、填充、鉴别器或任何其他Mongoose特性。

Mongoose in browser

另一方面,"mongoose“将由没有DOM结构来呈现的纯"node.js”运行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66997691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档