自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(137)
  • 收藏
  • 关注

原创 管理员数据生成

const mysql = require('../libs/mysql');const password = require('../libs/password');(async ()=>{ let db = await mysql; let name = 'blue'; let pass = '123456'; // 检查 let ro...

2019-12-30 14:56:51 245

原创 全局错误处理

server.js:const Koa = require('koa');const config = require('./config');const opn = require('opn');const network = require('./libs/network');const Router = require('koa-router');const {post, upl...

2019-12-30 00:24:37 289

原创 整合内容静态化

router\web\index.js:const Router = require('koa-router');let router = new Router();// 静态化// 寻找缓存router.get('/', async (ctx, next)=>{ let key = 'page:'; let maxage = 1 * 86400 * 1000;...

2019-12-30 00:06:07 193

原创 整合静态资源

router\index.js:const Router = require('koa-router');const static = require('./static');let router = new Router();router.use('/admin', require('./admin'));router.use('', require('./web'));sta...

2019-12-29 22:29:01 121

原创 整合路由

router\index.jsconst Router = require('koa-router');let router = new Router();router.use('/admin', require('./admin'));router.use('', require('./web'));module.exports = router.routes();rout...

2019-12-29 21:59:24 122

原创 整合session

session.js 代码:const session = require('koa-session');const fs = require('promise-fs');const config = require('../config');const client = require('./redis');module.exports = async server => {...

2019-12-29 18:29:17 70

原创 POST及文件上传

封装了很多东西:const Koa = require('koa');const config = require('./config');const opn = require('opn');const network = require('./libs/network');const Router = require('koa-router');const {post, uplo...

2019-12-29 16:04:42 237

原创 opn和网络提示

server.js:const Koa = require('koa');const config = require('./config');const opn = require('opn');const network = require('./libs/network');let server = new Koa();(async ()=>{ server.c...

2019-12-29 14:11:17 239 1

原创 增加数据库和redis

数据库MySQL:const Koa = require('koa');const config = require('./config');let server = new Koa();(async ()=>{ // 数据库 server.context.db = await require('./libs/mysql') server.use(asyn...

2019-12-29 13:18:35 777 1

原创 项目结构、配置

核心:koa 核心koa-router 路由koa-static 静态资源promise-fs 文件uuid 全局唯一标识符数据:koa-better-body、koa-convert post数据、文件数据memorystream 内存流promise-mysql mysqlredis、bluebird redis客户端session:koa-session渲染...

2019-12-29 10:36:01 182 1

原创 ejs库

下载npm包npm install ejs -D简单代码:const ejs = require('ejs')// 模板 数据 回调ejs.renderFile( './template/1.ejs', { name: "enoch", }, (err, html)=>{ if(err){ console...

2019-12-28 23:52:57 171

原创 session

koa-sessionnpm install koa-session -S代码const Koa = require("koa");const session = require("koa-session")const fs = require("promise-fs");// const opn = require("opn");let server = new Koa();...

2019-12-27 09:54:37 128

原创 服务秘钥生成

机器生成keys全局唯一标识符uuidconst uuid = require('uuid/v4');console.log(uuid())

2019-12-27 07:40:55 131

原创 cookie的基本使用

cookie用于在客户端存储一些数据、下次访问服务器时会携带这些数据容量小:每条4K,最多20条。(总容量30K)不安全:用户可以随意查看,修改不稳定:清理浏览器垃圾会消失同源策略限制:无法跨域访问使用cookiectx.cookies.set(key, val); // 设置ctx.cookies.get(key); // 获取篡改问题:签名秘钥循环秘钥代码:c...

2019-12-26 20:49:44 103

原创 jsonp数据

古老的跨域方法,已经逐步被CORS淘汰,但对后台来说,就是一个GET请求而已。民间标准。缺点:对权限松散,安全性差。CORS是ajax的增强,普通ajax通过监听onredyStatusChange来控制是否完成。jsonp的连接样子:http://localhost:8080/a?n1=15&n2=77&cb=>show(92)服务端代码:const Koa...

2019-12-26 19:59:01 93

原创 FormData

容器

2019-12-26 18:44:03 602

原创 深入应用koa-better-body

限制文件大小

2019-12-26 16:05:30 499

原创 路由嵌套

2019-12-26 12:06:19 89

原创 路由重定向

router.redirect默认使用301进行转跳,非常危险

2019-12-26 10:48:54 338

原创 路由参数

ctx.params的使用:当我把对应参数传过去,ctx.params就会得到相应的值,必传才行。const Koa = require("koa");const Router = require("koa-router");let server = new Koa();let router = new Router();server.listen(8000);router.ge...

2019-12-26 10:40:35 202

原创 路由方法

路径写法koa-router中路径有4种写法:字符串:router.get("/’)数组:router.get([’/’, ‘/index’])通配符:router.get("*")正则:router.get(/^(index)?/)all和use:all用于挂载路由节点,可以独立工作use用于挂载中间件,“无法独立工作”路由参数:...

2019-12-26 10:16:53 344

原创 数据解析

GETGET数据的处理:GET一般都是请求页面,不过也可以传传form表单,一起看看html代码<!DOCTYPE html><html lang="zh"><head> <meta charset="UTF-8"> <title>Page Title</title></head>&l...

2019-12-22 17:50:00 139

原创 koa-static静态资源

简单代码:const Koa = require("koa");const static = require('koa-static');let server = new Koa();server.listen(8000);server.use(static('./static', { maxage: 60*86400*1000, // 60天 index: "in...

2019-12-22 16:48:22 539

原创 ctx对象的属性

请求访客地址:ipcontext:类似protype,用于补充功能。state: 官方提供的方法空间,防止context覆盖了一下系统功能。特性检测:检测给用户提供什么语言的网页,方法有两种,方法1:根据用户的ip地址,区分国家;方法2:可以有在日本的中国人,也可能有在美国的中国人,或者在中国的美国人,所以方法一不准确,所以可以使用ctx.acceptsLanguage方法。cons...

2019-12-22 11:49:19 1277

原创 认识ctx对象、ctx的方法

ctx.req 原生request对象ctx.res 原生response对象ctx.request koa的request对象ctx.response koa的response对象ctx.throw()抛异常:ctx.redirect()重定向301永久重定向302临时重定向const Koa = require("koa")...

2019-12-22 10:47:00 25707

原创 koa-router基本使用、错误处理404和500

路由:根据请求方式、请求地址的不同来执行对应的函数安装npm install koa-router --save案例:const Koa = require("koa");const Router = require("koa-router");let server = new Koa();server.listen(8000);let router = new Rout...

2019-12-21 16:40:01 4925

原创 Koa.js基础 认识Koa.js

先初始化和下载koa:npm init -ynpm install koa -D第一段代码:const Koa = require("koa"); // 引入Koalet server = new Koa(); // 创建实例server.listen(8000); // 监听端口server.use(async ctx => { ctx.body = "h...

2019-12-21 15:03:36 857

原创 14React Redux入门

官网:https://redux.js.org/安装:npm install redux --savedemo案例:// redux的使用import {createStore} from "redux";// 初始化的时候执行一次 更新数据的时候执行一次// 第二参数action会接受dispath中传来的type值const store = createStore( (sta...

2019-12-20 11:38:35 95

原创 13React Router

安装React Routernpm install react-router-dom精准匹配: exact为true即可。赋值要写在大括号里,不然用引号是字符串。404:使用Switch组件解决import React from "react";import ReactDOM from "react-dom";import {BrowserRouter, Route, Switch}...

2019-12-20 07:51:11 97

原创 12在React中使用sass

React脚手架中已经把css-loader、style-loader、sass-loader安装好了,只需要安装node-sass就可以了。npm install node-sass --savestyles.scss做入口文件_base.scss放基础样式_setting.scss放提取变量命名规则:BEM — Block Element Modifier.header { ...

2019-12-19 11:42:29 547

原创 11在React中使用第三方组件

在jsx模板中传dom节点的两种方法:方法一:使用props自定义属性。import React from "react";import ReactDOM from "react-dom";const Layout = (props) => { return ( <div> <p>上</p> ...

2019-12-18 19:22:19 877

原创 10 create-react-app

官网地址:https://create-react-app.dev/临时下载安装create-react-app,没有占用全局。需要npm 5.2以上支持。npx create-react-app myapp下载好了之后启动项目:cd myappnpm run start把里面src下的内容清空,自己写一个index.js文件作为入口文件:写第一个页面import React ...

2019-12-18 14:44:35 178

原创 09State详解

需要完善的功能:功能1:删除单个Option功能2:刷新后数据依旧存在

2019-12-18 11:29:28 95

原创 将博客搬至CSDN

知乎文章搬家到CSDN

2019-12-17 14:05:32 72

原创 08函数组件

React中组件分为类组件和函数组件,在函数组件中没有state属性,所以一些使用不到state属性的类组件可以使用函数组件。定义函数组件:const User = () => { return ( <div> <p>名字:</p> <p>年龄:</p> ...

2019-12-17 13:18:13 214

原创 07组件中的state属性

以前没有组件化的时候重新渲染数据要写一个render函数,然后每次渲染都是执行这个函数,渲染新的模板。组件化之后:state属性是一个对象,类似Vue中的data属性一样存值,当state中的数据改变就会重新渲染页面。初始代码:class Count extends React.Component { handleAddOne() { console.log("+1"...

2019-12-16 15:03:23 220

原创 06在组件中传值和定义事件

自定义属性传值:除了原有的属性如id className等之外的属性class MyApp extends React.Component { render() { return (<div> <Header title="我的标题1"/> </div>) }}class Hea...

2019-12-16 13:19:36 79

原创 05组件化思想

如何创建组件:定义一个类,然它继承React.Component属性。class Header extends React.Component { render () { // return jsx语法 return <p>我是一个组件</p> }}组件如何使用:const jsx = ( <div...

2019-12-15 17:37:56 85

原创 04input框和列表渲染

先看一段代码:const obj = { title: "帮你做决定", subtitle: "把你的命运交给电脑吧!", options: ["option1"]}const showOptions = (options) => { if(options && options.length > 0) { retur...

2019-12-15 16:08:10 569

原创 03绑定属性和事件

属性绑定在JSX语法的html代码中,标签属性比如id、class等,需要主要class的写法是className,因为在js中有class类这样的关键字,不允许使用。如let count = 0;// javascript XMLconst template = (<div> <h1 id='my-id' className="my-class"&...

2019-12-15 10:49:45 152

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除