7.6k 7 分钟


在 Node.js 中,模块是一个库或框架,也是一个 Node.js 项目。Node.js 项目遵循模块化的架构,当我们创建了一个 Node.js 项目,意味着创建了一个模块,这个模块必须有一个描述文件,即 package.json。它是我们最常见的配置文件,但是它里面的配置你真的有详细了解过吗?配置一个合理的 package.json 文件直接决定着我们项目的质量,本章就带大家了解下 package.json 的各项详细配置。

438 1 分钟

# What

npm(全称 Node Package Manager,即 node 包管理器)是 Node.js 默认的、以 JavaScript 编写的软件包管理系统。
作者:艾萨克・施吕特(Isaac Z. Schlueter)

3.4k 3 分钟

npm install 时偶尔遇到报错:没有安装 python 或 node-sass 安装失败的问题,百度之后发现是被墙了,但根据百度的方法换了淘宝镜像和用了 vpn 都安装失败,最后发现原来是因为没有卸载之前安装失败的包导致的。作者本人最后的解决方案是 npm uninstall node-sass,然后使用 VPN 重新安装了一遍就成功了。不能翻墙的同学请看下文

183 1 分钟

在 node-sass 目录下面新建一个 vendor 的空目录,然后运行 npm/cnpm rebuild node-sass --save-dev 即可,如果安装失败,会生成一个目录名为类似这样 win32-x64-48 的空目录,然后去 https://github.com/sass/node-sass/releases 这个网站下载对应这个目录名的.node 文件放到这个目录下即可。
9.3k 8 分钟


开门见山,npm install 大概会经过上面的几个流程,本篇文章来讲一讲各个流程的实现细节、发展以及为何要这样实现。

1.8k 2 分钟

# 一、描述

koa 处理 post 请求的时候,需要对 body 传递过来的数据进行处理。
实际上如果要手动实现一个能够处理 application/x-www-from-urlencoded 的中间件,还是借助的原生 node.js 的方法进行处理。
koa 封装了原生了 node.js 的 request 对象到 ctx.req 中。
而借助原生 node.js 的 request 对象,监听 data 事件及 end 事件,进行处理。

2.2k 2 分钟

# 一、需求

之前使用 express 的时候,使用 multer 进行文件上传,而 koa-multerkoa-modules 提供的文件上传中间件。
在 express 中使用 multer 进行文件上传:

两者使用起来其实本质上是一样的,提供的 API 也都差不多。

2.4k 2 分钟

# 一、需求

之前使用 koa2 的时候,处理 post 请求使用的是 koa-bodyparser ,同时如果是图片上传使用的是 koa-multer
这两者的组合没什么问题,不过 koa-multerkoa-route (注意不是 koa-router ) 存在不兼容的问题。
这个问题已经在这篇文章中说明了:

koa-body 主要是下面两个依赖:

"co-body": "^5.1.1",
"formidable": "^1.1.1"

具体的实现可以在 github 上查看 : https://github.com/dlau/koa-body

217 1 分钟

html 的表单 length 长度是以字符个数计算的,不管是汉字还是字母,但是数据库又是按字节计算的,汉字占 2 个字母占 1 个,这样容易造成写入的时候长度超出的问题。 // 假设页面编码是 utf8function lengthInUtf8Bytes(str) { var m = encodeURIComponent(str).match(/%[89ABab]/g); return str.length + (m ? m.length : 0) / 2;}
1.4k 1 分钟

str 为要去除空格的字符串: 去除所有空格: str = str.replace(/\s+/g,""); 去除两头空格: str = str.replace(/^\s+|\s+$/g,"");去除左空格:str=str.replace( /^\s*/, '');去除右空格:str=str.replace(/(\s*$)/g, "");SCRIPT LANGUAGE="JavaScript"> <!-- // 出处:网上搜集 // Trim() , Ltrim() ,...