首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

React、TypeScript、NodeJS 和 MongoDB 搭建 Todo App

在本教程中,我们将在服务器和客户端使用 TypeScript、React、NodeJS、Express 和 MongoDB 从头开始构建一个 Todo 应用程序。 我们从设计 API 开始。...用 NodeJS, Express, MongoDB 和 TypeScript 设计 API 启动 如果你是新手,可以看看《TypeScript 实用指南》,或者从《如何用 Node JS、Express...在终端上运行这个命令,创建一个新的 NodeJS 应用程序: yarn init 它会询问几个问题,然后初始化应用程序。你可以通过向命令中添加 -y 标志来跳过。...因为默认情况下,这个应用程序会使用 JavaScript。 在 NodeJS 应用程序中有两种使用 TypeScript 的方法,要么在项目中本地安装使用,要么在电脑中全局安装使用。...创建服务器 在创建服务器之前,我们需要在 nodemon.json 加一些环境变量来保存 MongoDB 的凭据。

17K30

Week14-服务端选型:磨刀不如砍柴功

第一章 周介绍 1-1 本周介绍 服务端选型:所有技术为业务服务 nodejs框架选型:Koa2 数据库:Mysql Mongodb Redis 登录校验:JWT 单元测试与接口测试:Jest...线上服务:PM2 + nginx 第二章 选择nodejs框架 2-1 nodejs框架选型-开始 所用常见的nodejs框架中,Koa2是最简单、最小的 目的扩充广度,让你了解有这门技术 Koa2...mysql与mongoose的测试的时候,在routes/index.js中将有关redis的内容暂时注释, 然后执行:npm run start,出现下面则测试成功!...第十章 mysql和Sequelize 关于表的外键:表关联,有一些外键的设置,我发现之前的后端表中都没有对外键盘做一个级联操作,于是在回头查看一些表结构的时候,就不容易看出来一些表的关联关系,如果我们在新建表的时候就去设置外键表的关联...操作redis-2 没什么印象深刻的 服务器–如何查看redis安装在哪个目录

2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何构建一个 NodeJS 影院微服务并使用 Docker 部署

    前言 如何构建一个 NodeJS 影院微服务并使用 Docker 部署。在这个系列中,将构建一个 NodeJS 微服务,并使用 Docker Swarm 集群进行部署。...以下是将要使用的工具: NodeJS 版本7.2.0 MongoDB 3.4.1 Docker for Mac 1.12.6 在尝试本指南之前,应该具备: NodeJS 的基本知识 Docker 的基本知识...因此,在“构建 NodeJS 电影目录微服务”系列中,将仅关注电影目录服务。 在这个架构中,可以看到有 3 种不同的设备使用该微服务,即 POS(销售点)、移动设备/平板电脑和计算机。...继续看一下如何创建传递给 repository 模块的 db 连接对象,现在定义说每个微服务都必须有自己的数据库,但是对于示例,将使用一个 MongoDB 复制集服务器,但每个微服务都有自己的数据库。...首先,需要使用“使用 Docker 部署 MongoDB 复制集”的文章中的 Docker 环境,如果没有,则需要进行一些额外的修改步骤,以便为微服务设置数据库,以下是一些命令,进行测试电影服务。

    27322

    nodeJS操纵数据库

    在我们终端的任何一个目录下,都可以访问,配置在系统 环境变量里面的可执行文件 如何将一个软件的可执行文件配置在我们的系统环境变量中?...步骤: 1、拷贝一个可执行文件所在的目录,比如: node.exe所在的目录 C:\Program Files\nodejs 2、系统 > 高级系统设置 > 高级 > 环境变量 > 系统变量 >...url.parse(url字符串,true),如果是true的话代表把我们 的username=zhangsan&pwd=123 字符串解析成js对象 // 使用url模块获取url中的一些相关信息...当应用程序需要数据的时候,提供给应用程序去展示 安装mongodb服务端 步骤: 1、安装mongodb服务端软件 2、设置mongodb的环境变量,重启终端验证 mongo -version 3...(多条数据) 在NodeJS中使用mongodb这个第三方包来操作我们mongodb数据库中的数据 参考: https://www.npmjs.com/package/mongodb 前提准备: 1

    2.5K41

    如何构建NodeJS微电影服务并使用docker部署

    在本系列中,我们将构建一个基于NodeJS微服务,并使用Docker Swarm集群进行部署。...因为我们的服务器正在使用我们的movieAPI,让我们继续查看 movies.js 我们在这里做的是为我们的API创建routes,并根据所侦听的route调用我们的repo函数,我们的repo在这里使用接口技术...让我们继续创建db connection对象,现在定义每个微服务都有它自己的数据库,但对于我们的例子,我们将使用mongoDB副本集服务器,如果你现在不知道如何配置mongoDB replset服务器,...如何使用Docker部署MongoDB副本集 这里是我们需要从NodeJS连接到MongoDB数据库的配置。 有其他的方式实现,但我们通过副本集连接到mongoDB。...然后,我们将我们的微服务放入Docker容器中,以便能够进行一些集成测试。 我们在NodeJs中学到了许多,但这只是开始而已。我希望这个东西可以在您使用Docker和NodeJS时帮助你。

    1.9K30

    精读《如何在 nodejs 使用环境变量》

    1 引言 本期精读的文章是:如何在 nodejs 使用环境变量。 介绍了开发与生产环境如何管理环境变量。 这里环境变量指的是数据库密码等重要数据,而不是指普通变量传参。...2 概述 环境变量历史悠久,在运行第一行 JAVA 代码之前,你就得将环境变量设置好。 可问题是,系统变量并不易用,比如结尾是否要使用分号,JAVA_HOME 与 PATH 在哪些程序中功能相同?...而且与操作系统绑定,在操作系统级别设置的变量,给 JAVA 级别的程序用还好,但用来存数据库密码就不合适了。 在 Node 中,我们怎样使用环境变量呢?....env 文件的配置到 Nodejs 程序中。...5 更多讨论 讨论地址是:精读《如何在 nodejs 使用环境变量》 · Issue #89 · dt-fe/weekly

    3K20

    使用 Node.js 快速开启 ServerLess Functions:入门实践指南

    更多 AWS Lambda function 在本节示例中将使用 Aws Lambda,你可以选择上面列举的其它的服务商都是可以的,AWS 提供一年的免费试用,但是在使用 AWS 服务之前你需要先拥有一张有效的信用卡进行绑定...:定义你的服务需要部署的位置 functions:定义要部署的代码 functions.helloWorld:函数 functions.helloWorld.handler:value 中的 “handle.helloWorld...” 定义了函数文件的路径,handle 文件下的 helloWorld 函数 functions.helloWorld.events:events 定义了如何触发 “handler.helloWorld...总结 通过本节入门指南,希望你能掌握如何去开启一个 ServerLess 应用程序以及如何部署、在本地进行开发调试,这只是一个开始,下一节我将在这个基础之上使用 ServerLess、Node.js...和 MongoDB Atlas cloud 构建一个 REST API,敬请关注公众号 “Nodejs技术栈” 获取最新信息。

    2.7K20

    Crawlab 支持Nodejs爬虫插入数据

    ,这里记录下解决问题的过程一、背景 crawlab 官方文档的scrapy 爬虫爬取的结果可以在任务栏的数据那里看到,但是官方没有指引nodejs如何达到类似的成果。...这对使用nodejs在crawlab上写爬虫的同学非常不友好。图片 nodejs要支持这样的效果,需要先分析crawlab爬虫任务完成后,具体是怎么写入数据库的。...二、安装mongo-express 在之前的文章Crawlab 支持Nodejs脚本执行 - 腾讯云开发者社区-腾讯云 (tencent.com) 里面安装支持nodejs的crawlab多方法基础上...就可以看到mongodb里面的数据了,记得要开启对应端口的防火墙三、分析爬虫结果如何插入数据库图片图片图片图片上图列举的爬取的数据在数据库里如何存储,省略了部分细节。...将爬虫爬取的结果存储到步骤2的结果集里四、使用nodejs完成数据库插入 打印nodejs执行的时候都环境变量,可以看到当前的任务id和Mongodb数据库的各种链接参数图片 那我们要做的事情就很简单了

    1.2K10

    探索异步迭代器在 Node.js 中的使用

    异步迭代器与 Writeable 在 MongoDB 中使用 asyncIterator MongoDB 中的 cursor MongoDB 异步迭代器实现源码分析 使用 for await...of...行 {3} 如果迭代器对象完成,返回的 Promise 对象 done 属性设置为 true,遍历器也就结束了,变量 finished 是由 iterator 对象的 return() 方法被调用之后设置的...在 MongoDB 中使用 asyncIterator 除了上面我们讲解的 Node.js 官方提供的几个模块之外,在 MongoDB 中也是支持异步迭代的,不过介绍这点的点资料很少,MongoDB 是通过一个游标的概念来实现的...) { console.log(val.name); } 对于遍历庞大的数据集时,使用游标它会批量加载 MongoDB 中的数据,我们也不必担心一次将所有的数据存在于服务器的内存中,造成内存压力过大...Unit8Array),所以才会看到在 pipeline 传输的中间又使用了生成器函数,将每次接收的数据块处理为可写流 Buffer 类型。

    7.5K20

    腾讯云搭建Easy-Mock对接Element-UI提供数据支持

    状态转化(State Transfer) 访问一个网站,就代表了客户端和服务器的一个互动过程。比如存在于数据库中的数据经过后台服务器的处理生成静态文件HTML呈现到浏览器中。...这里新建接口,左边填入数据,设置请求地址为 city ,请求方式为 post ,填下描述。确认。...": "@boolean" //随机true,false }] } } 添加完成后再postman中进行接口测试,接口请求地址为 Base URL+/city 类型为 get 。...dev.env.js 中的BASE_API为你的服务器API 'use strict' const merge = require('webpack-merge') const prodEnv = require...这里主要介绍了如何在腾讯云中搭建自己的EasyMock并且在Element-UI中使用它来为我们提供更为真实的数据。以上RestFul、Swagger等皆为铺垫,对接口信息有一个基本的认识和使用。

    1.1K50

    Mongodb PHP封装API类,实现基本的插入修改查询删除操作

    等同 where username like "%yhp%" 变量设置 /** * Mongodb 对象句柄 * * @var object Mongo */ private $_mongo...$safe 是否安全操作 false:不等待服务器的响应直接返回 true:等待服务器的响应(数据非常重要时推荐) * @param boolean $fsync 操作后是否立即更新到碰盘,...$safe 是否安全操作 false:不等待服务器的响应直接返回 true:等待服务器的响应(数据非常重要时推荐) * @param boolean $fsync 操作后是否立即更新到碰盘,...* @param boolean $safe 是否安全操作 false:不等待服务器的响应直接返回 true:等待服务器的响应(数据非常重要时推荐) * @param boolean $fsync...,是否以查询条件和要更新的字段一起新建一个集合 * @param boolean $safe 是否安全删除 false:不等待服务器的响应直接返回 true:等待服务器的响应(数据非常重要时推荐

    2.7K20

    mongodb11天之屠龙宝刀(六)mapreduce:mongodb中mapreduce原理与操作案例

    “映射(Map)”与“化简(Reduce)”的概念是它们的主要思想。MapReduce使用JavaScript作为“查询语言”,能够在多台服务器之间并行执行。...a.在orders集合上进行MapReduce操作,首先使用query进行“过滤”操作,选择出 status为’A’的所有文档。...,在这里设置的值在map,reduce,finalize函数中可见 jsMode:boolean verbose:boolean...: , // 指定一个全局变量,能应用于finalize和reduce函数 jsMode: boolean>, 是否减少执行过程中BSON和JS的转换,默认true] false...verbose: boolean> true或false,表明结果输出到的collection是否是临时的,如果为true,则会在客户端连接中断后自动删除,如果你用的是MongoDB的mongo客户端连接

    94940

    Node.js 中的这几个场景都可以使用异步迭代器

    异步迭代器与 Writeable 在 MongoDB 中使用 asyncIterator MongoDB 中的 cursor MongoDB 异步迭代器实现源码分析 使用 for await...of...行 {3} 如果迭代器对象完成,返回的 Promise 对象 done 属性设置为 true,遍历器也就结束了,变量 finished 是由 iterator 对象的 return() 方法被调用之后设置的...在 MongoDB 中使用 asyncIterator 除了上面我们讲解的 Node.js 官方提供的几个模块之外,在 MongoDB 中也是支持异步迭代的,不过介绍这点的点资料很少,MongoDB 是通过一个游标的概念来实现的...) { console.log(val.name); } 对于遍历庞大的数据集时,使用游标它会批量加载 MongoDB 中的数据,我们也不必担心一次将所有的数据存在于服务器的内存中,造成内存压力过大...Unit8Array),所以才会看到在 pipeline 传输的中间又使用了生成器函数,将每次接收的数据块处理为可写流 Buffer 类型。

    3.8K40

    mongodb11天之屠龙宝刀(六)mapreduce:mongodb中mapreduce原理与操作案例

    “映射(Map)”与“化简(Reduce)”的概念是它们的主要思想。MapReduce使用JavaScript作为“查询语言”,能够在多台服务器之间并行执行。...a.在orders集合上进行MapReduce操作,首先使用query进行“过滤”操作,选择出 status为’A’的所有文档。...,在这里设置的值在map,reduce,finalize函数中可见 jsMode:boolean verbose:boolean...: , // 指定一个全局变量,能应用于finalize和reduce函数 jsMode: boolean>, 是否减少执行过程中BSON和JS的转换,默认true] false...verbose: boolean> true或false,表明结果输出到的collection是否是临时的,如果为true,则会在客户端连接中断后自动删除,如果你用的是MongoDB的mongo客户端连接

    2.1K60

    Nodejs v14.3.0 发布支持顶级 Await 和 REPL 增强功能

    顶级 Await 支持 不再需要更多的 "async await, async await..." 支持在异步函数之外使用 await 关键字。...一种使用方式是文件后缀名使用 .mjs,另一种使用方式是还使用原来的 .js 文件,但是要设置 package.json 的 type=module,详情可以去官网查看 nodejs.org/api/esm.html...创建 index.mjs 以下示例中我们使用 setTimeout 模拟了一个 sleep 函数,在指定的延迟时间下打印输出。...Top-level await 的用途 上面介绍了 Top-level await 该如何使用,这里说下它的用途,个人认为一个比较有用的是我们可以在文件的头部做一些资源的初始化。...connection] ERROR: ${err}`); throw err; }); } index.mjs 例如,index.mjs 为我的启动文件,在启动时需要初始化上面定义的

    1.1K30

    搭建easy-mock数据模拟服务器 数据模拟模拟数据服务器搭建easy-mock服务器easy-mock的缺点

    但是建议大家如果是一些较正式的项目数据,不要使用在线的服务,因为我们之前就有一个项目使用了在线的easy-mock服务,一次客户要给领导演示,前面我们各种测试,没有问题。...配置easy-mock 前面说了,easy-mock使用了mongodb和redis,所以最主要的是要配置他们的连接信息,找到config/default.json文件,修改如下图中的红框内的内容即可:...image.png 启动easy-mock 首先启动mongodb和redis服务,然后在easy-mock工程下,调用npm run dev 可以启动easy-mock服务。...'name|1': boolean:随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2。...6.属性值是函数 Function 'name': function:执行函数 function,取其返回值作为最终的属性值,函数的上下文为属性 'name' 所在的对象。 7.

    2.4K30
    领券