React: 使用express脚本库

一、简介

众所周知,服务器的功能非常强大,它能够访问所有资源的能力是浏览器所不具备的。服务器可以非常安全,并且可以安全地访问数据。用户可以在服务端渲染初始内容的优势上充分利用这些额外的优点。在上篇中已经介绍过了通过Express脚手架来创建本地的Web后端服务器与React客户端服务器进行数据通信,虽然这个方案是可行的,但是过程还是比较复杂,因为我们需要同时分别启动两个服务器。那么有没有一个方案使用一行命令可以同时启动两个服务器。答案是有的。可以通过express脚本库和concurrently搭配使用,concurrenly是一个可以通过配置命令来同时启动两个服务器的插件。

二、安装

1、安装express脚本

//在当前react项目下安装express
npm install express --save

2、安装concurrently插件

//在当前react项目下安装concurrenly
npm install concurrenly --save

三、Server

既然使用express后端服务器,就需要创建服务器项目,在项目根目录下创建server.js文件,如下

//导入express脚本库
const express = require(‘express‘);

const logger = (req, res, next) => {
    console.log(`${req.method} request for ${req.url}`);
    next()
};

const sayHello = (req, res) =>
    res.status(200).send("<h1>Hello World! Express<h1/>");

//创建一个Web服务器app,通过.user()函数将两个中间件logger和sayHello串联起来。
//首先,logger会将与每个请求有关的信息输出到控制台
//然后,服务器会调用sayHello返回HTML信息作为请求的响应
const app = express()
    .use(logger)
    .use(sayHello);

app.listen(3000, ()=> console.log(`Receive app running at ‘http://localhost/3000‘`));

四、项目

五、配置

配置package.json,使其可以同时启动两个服务器【注意:express服务器默认监听端口:3000】, 有变化的地方请看红色部分

{
  "name": "react-demo",
  "version": "0.1.0",
  "private": true,
  "license": "ISC",
  "dependencies": {
    "concurrently": "^5.0.2",
    "events": "^3.0.0",
    "express": "^4.17.1",
    "flux": "latest",
    "isomorphic": "0.0.11",
    "isomorphic-fetch": "^2.1.1",
    "prop-types": "^15.7.2",
    "react": "^16.12.0",
    "react-dom": "^16.12.0",
    "react-redux": "^7.1.3",
    "react-router-dom": "^5.1.2",
    "react-scripts": "0.9.x",
    "redux": "^4.0.4",
    "redux-thunk": "^2.3.0",
    "uuid": "^3.3.3"
  },
  "devDependencies": {
    "redux-logger": "^3.0.6"
  },
  "scripts": {
    "client": "react-scripts start",
    "server": "nodemon server.js",
    "start": "concurrently --kill-others-on-fail \"yarn server\" \"yarn client\"",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  }
}

六、启动

//React客户端服务器和Express后端服务器都启动了
yarn start

原文地址:https://www.cnblogs.com/XYQ-208910/p/12111927.html

时间: 2024-08-30 14:13:41

React: 使用express脚本库的相关文章

Node: 使用Express脚本库搭建本地的Web服务器

一.简介 在之前学习的React开发中,一直使用create-react-app脚手架创建和开发Web项目,通过搭配ReactRouter路由实现静态页面的交互,然后通过yarn start或npm start来启动项目,这个启动过程是由客户端服务器执行的.使用express脚手架生成的应用可以作为后台服务器,默认监听3000端口,该后台服务器可以监听React项目,与React应用进行数据交互. 二.安装 必须先安装过node,express安装步骤如下: //1.安装Express脚手架 s

SOAPUI中文教程---脚本和脚本库

SoapUI为脚本编写提供了广泛的选择,使用Groovy或Javascript(由SoupUI 3.0开发)作为脚本语言,使用哪些选项可在左下方的项目详细信息选项卡中设置项目级别. 这里提供的大部分文档将适用于Groovy语言,因为它可以大大简化Java API的脚本(您可以在Groovy网站上获取更多信息,教程等). 本文档将进一步介绍如何使用JavaScript的概述. 脚本可以在了SoapUI以下地方使用: Groovy Script TestStep 运行测试之前和之后运行一个TestC

JS(JavaScript)脚本库的积累

在现在互联网盛行的时代,使得B/S架构飞速发展.曾经在大学的时候我一直都梦想着毕业后要找一个像腾讯这样大企业做C/S方面的开发工作(其实现在腾讯也有很多B/S软件),因为C/S体验度非常高,感觉非常好.但是此时此刻,我却没有这样的想法了.这是为什么呢?对于有经验的软件工程师都很清楚,B/S的程序部署在服务器,客户端只需要浏览器即可使用,而C/S需要客户在终端安装客户端程序,所以B/S在维护和升级方面的简易性上,无疑有独有优势,而且对客户端的硬件要求相对于C/S软件一般都要低.B/S当然它也有它的

Script.NET实现脚本库

Script.NET本身没有实现调用脚本库的功能.如果将一堆已经定义好的函数放在一个脚本文件里头作为脚本库,要调用这个脚本库时只需要稍作改动就行. 首先建立一个XML文档专门存放哪个脚本会调用哪些库,结构如下 <?xml version="1.0" encoding="utf-8" ?> <LibMapping> <MainScript scriptName=""> <LibScript libFileN

[RN] React Native 使用开源库 react-native-image-crop-picker 实现图片选择、图片剪裁

React Native 使用开源库 react-native-image-crop-picker 实现图片选择.图片剪裁 该库可以实现启动本地相册和照相机来采集图片,并且提供多选.图片裁剪等功能,支持iOS和Android两个平台,不同平台需要分别配置,详细的文字说明见github. 一.安装 npm install react-native-image-crop-picker -S react-native link react-native-image-crop-picker 二.配置 1

TiOps脚本库如何使用

TiOps提供了脚本库的功能,用于统一存放和授权脚本.TiOps的脚本库,最大的特点是,它可以支持脚本版本的功能,有点gitlab网页版的感觉.登录TiOps,在左侧菜单栏中选择[脚本库],默认里面是没有任何脚本的,需要我们先创建脚本库点击确定,一个脚本库就创建好了,创建完成之后,如下图左侧会有一个文件夹,默认名称和脚本库的名称相同,这里还可以创建新的文件夹,选择左侧文件夹,右侧可以创建脚本,上传脚本,更多里面是复制和移动脚本,点击创建脚本脚本创建完成之后,会看到如下的界面,点击编辑,在编辑框中

React + Redux + express+ antd 架构的认识

在过去的两周里,我使用这套技术栈进行项目页面的开发.下面是我个人的对于项目的一些看法: 首先:是项目的调试,我深表压力很大,项目是使用fibber去抓包调试的,也不知道我们项目的负责人,怎么能的我在每次更改代码,webpack重新打包压缩的时候总是很慢,当然也有可以是领导的电脑配置高.但是对于我这种刚来的菜鸟来说这样自测真的很慢啊,也不知道后期会不会更改了.刚入门的菜鸟表示压力很大. 第二:对于redux,我不知道前人是什么逻辑去使用这个状态管理器的,总感觉他们写的代码很乱,我理解起来很有难度,

Creating Isomorphic Apps with Node.js, React, and Express

In this article, we’re going to use following software: React: the UI framework that can rendered on both server and client. webpack: a module bundler to be used for bundling JavaScript. Express: the application server framework for Node.js. react-ro

react 常用的ui库

https://ant.design/docs/react/introduce-cn   ANT DESIGN http://www.material-ui.com/#/ Material-UI