Nodejs学习篇01 - 环境配置和模块化


first of all:自我笔记用

webstorm设置支持node语法支持和自动补充

file - setting - languages - node.js&npm
在这里插入图片描述
然后在Javascript中设置
在这里插入图片描述
如果列表中没有就去Download找node,emmmm,前提是安装包node.js这个大前提我就不用说了吧。

创建一个web服务器

nodejs 采用了commnJs的规范,首先引用http服务。

const http = require("http");
//request 获取url传来的信息
//response 给浏览器相应信息
http.createServer((request,response)=>{
	//设置响应头
	response.writeHead(200, {"content-Type": "text/html;charset=utf-8"});
    response.write("我正在学习nodejs\n");
	response.end("响应结束");
//绑定端口
}).listen(8081);

url获取

我在学习的时候,看着公开课视频里采用的是url模块,但是目前这个模块不符合规范已经被弃用了,主要可以采用方式用如下

querystring模块

const http = require("http");
const queryString = require("querystring");
//request 获取url传来的信息
//response 给浏览器相应信息
http.createServer((request,response)=>{
	//设置响应头
	response.writeHead(200, {"content-Type": "text/html;charset=utf-8"});
    //把url的参数部分丢入parse里面
    let params = queryString.parse(request.url.split("?")[1]);
    response.write(JSON.stringify(params));
	response.end("响应结束");
//绑定端口
}).listen(8081);

浏览器地址填写“http://localhost:8081/abc?name=sue&psd=sss”试试看?

URL类

//两个构造参数,第一个是url参数部分,第二个是域名或者访问服务地址
let queryData = new URL(`${request.url}`, 'http://localhost:8081');
//众所周知,能get就可以set
console.log(queryData.searchParams.get("name"));

对了,每次请求都是两次,一次是单纯请求图标,把它规避了就可以
if(request.url !== ‘/favicon.ico’){
//url操作
}

webstorm热部署

先全局安装supervisor

 npm install -g supervisor

用supervisor代替node来启动就好了
nodejs项目启动的话,如下找到你npm目录下安装的superisor.cmd就好了
在这里插入图片描述

模块化

暴露:

	//这里是exports,别和ES6搞混
	exports.fool={
	name: "sueXiaoxie",
	age: 21,
	}

引用

let fool = require('path/js文件').fool

node默认会引入一个文件夹下的index.js,所以一个文件夹下的所有暴露方法属性都引入index,然后直接引用这个文件夹名就可以,想改变个默认需要在此文件夹下做一个package.json(cmd:npm init --yes)的配置,在key为main的配置入口文件。

npm install

-g:等同于 --global 安装在全局目录下,不会写入package.json;
-s: 等同于 --save, 安装在本地项目目录下,并写入package.json的dependencies中;
-d:等同于 --save-dev,安装在本地项目目录下,并写入package.json的devDependencies中;
@版本号

package.json

用于描述项目
生成命令为:npm init --yes
内部内容:

//所有通过--save写入的依赖
 "dependencies": {
    "axios": "^0.18.0",//版本号,^表示第一位版本号不变;后两位取最新
    					//~表示前两位版本号不变,最后一位取最新
    					//*表示全部取最新的版本
    					//什么都不加,则表示固定版本,不做任何版本修改
  },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值