安装官网:

https://nodejs.org/en/

  运行代码:

var http=require('http')
http.createServer(function(req,res){
res.writeHead(200,{'Content-Type':'text/html'});
res.write('<h1>Node.js</h1>');
res.end('<p>PCAT</p>');
}).listen(3000);
console.log('HTTP server is listening at port 3000.');

  建立app.js 用cmd启动,出现成功

HTTP server is listening at port 3000.

  安装调试工具:

npm install -g supervisor

  用supervisor启动服务,每次修改代码就不用node启动了。

supervisor app.js   文件名称

  同步读取文件:

var fs=require('fs');
var data=fs.readFileSync('file.txt','UTF-8');
console.log(data);
console.log('end');

  

异步读取文件:

var fs=require('fs');
fs.readFile('file.txt','UTF-8',function(err,data){
if(err){
console.log('read file err');
}else{
console.log(data);
}
});
console.log('end');

  

写一个简单的自定义事件:

var EventEmitter=require('events').EventEmitter;
var event=new EventEmitter();
event.on('some_event',function(){
console.log('这是一个自定义事件');
});
setTimeout(function(){
event.emit('some_event');
},1000);

  

自定义模块(调用):

var myModule=require('./module');
myModule.setName('marico');
myModule.sayHello();

  模块:

var name;
exports.setName=function(thyName){
name=thyName;
}
exports.sayHello=function(){
console.log('hello'+name);
}

  

把上面的方法分装一下:

function hello(){
var name;
this.setName=function(thyName){
name=thyName;
}
this.sayHello=function(){
console.log('hello '+name);
}
}
//exports.hello=hello;
module.exports=hello;
var hello=require('./module.js');
var he=new hello();
he.setName('marico');
he.sayHello();
var he2=new hello();
he2.setName('yfc');
he2.sayHello();

  npm创建包步骤:

1.npm init

安装包:(要进入node安装目录)

C:\Users\Administrator\AppData\Roaming\npm\node_modules\npm\lib>npm install testpackage/

  查看包:

npm list

vue地址:

<script src="https://unpkg.com/vue@2.3.3/dist/vue.min.js"></script>

安装vue-cli:(全局安装)

npm install vue-cli -g

  vue构成项目

vue init webpack-simple demo5

  创建完成后:(下载git上依赖的文件)

npm install
npm run dev
  vue init webpack demo6

  安装依赖环境

npm install

  运行:

npm run dev

  打包:

npm run build

  生成的文件:

安装cnpm:

npm install -g cnpm --registry=https://registry.npm.taobao.org

  安装vue-Resource

cnpm install vue-resource --svae

  安装exios

cnpm install axios --save

  两种不同的加载

 module.exports={
userName:"laoshi",
sayHello:function(){
return 'Hello laoshi';
}
} exports.userName="Tom";
exports.sayHello=function () {
return 'World';
}

  引用:

let user=require('./User');
console.log(`userName:${user.userName}`);
console.log(`I'm ${user.userName},I say ${user.sayHello()}`);

  创建服务:

let http=require('http');
let url=require('url');
let util=require('util');
let server= http.createServer((req,res)=>{
res.statusCode=200; res.setHeader("Content-Type","text/plan;charset=utf-8"); console.log("url:"+req.url);//字符串 console.log("parse:"+url.parse(req,url));//[object] console.log("inspect:"+util.inspect(url.parse(req.url)));//调试的时候使用 res.end(util.inspect(url.parse(req.url)));
});
server.listen(3000,'127.0.0.1',()=>{
console.log("服务器已经运行,请打开浏览,输入:http://127.0.0.1:3000/ 来进行访问");
});

  

let http = require('http');

let util=require('util');
http.get("http://www.imooc.com/u/card", function (res) {
let data = '';
res.on('data', function (chunk) {
data += chunk;
}); res.on('end', function () {
let result = JSON.parse(data);
console.log("result:"+util.inspect(result));
})
});

  安装:

cnpm install -g express-generator

  查看版本

express --version

  创建server

express server

  安装依赖:

cnpm install

  进入server运行

node bin/www

  安装ejs

cnpm install ejs --save

  配制html

安装pm2

cnpm install pm2 -g

  启动pm2

pm2 start server/bin/www

  停止(所有)

pm2 stop all

  启动monog数据库

mongod -f /usr/local/etc/mongod.conf

  无滚动工具安装:https://www.npmjs.com/

npm install vue-infinite-scroll --save

  

node.js(一)的更多相关文章

  1. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  2. 利用Node.js的Net模块实现一个命令行多人聊天室

    1.net模块基本API 要使用Node.js的net模块实现一个命令行聊天室,就必须先了解NET模块的API使用.NET模块API分为两大类:Server和Socket类.工厂方法. Server类 ...

  3. Node.js:进程、子进程与cluster多核处理模块

    1.process对象 process对象就是处理与进程相关信息的全局对象,不需要require引用,且是EventEmitter的实例. 获取进程信息 process对象提供了很多的API来获取当前 ...

  4. Node.js:理解stream

    Stream在node.js中是一个抽象的接口,基于EventEmitter,也是一种Buffer的高级封装,用来处理流数据.流模块便是提供各种API让我们可以很简单的使用Stream. 流分为四种类 ...

  5. Node.js:Buffer浅谈

    Javascript在客户端对于unicode编码的数据操作支持非常友好,但是对二进制数据的处理就不尽人意.Node.js为了能够处理二进制数据或非unicode编码的数据,便设计了Buffer类,该 ...

  6. node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法

    1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...

  7. Node.js npm 详解

    一.npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分,不过只介绍了linux平台,如果是其它平台,有前辈写了更加详细的介绍. npm的全称:Node Package M ...

  8. Node.js入门(一)

    一.Node.js本质上是js的运行环境. 二.可以解析js代码(没有浏览器安全级的限制): 提供系统级的API:1.文件的读写 2.进程的管理 3.网络通信 三.可以关注的四个网站: 1.https ...

  9. Node.js学习笔记——Node.js开发Web后台服务

    一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  10. Node.js入门

    开始之前,安利一本正在看的书<站在两个世界的边缘>,作者程浩,上帝丢给他太多理想,却忘了给他完成理想的时间.OK,有兴趣的可以看一看. node.js如标题一样,我也是刚开始接触,大家一起 ...

随机推荐

  1. CF1100B Build a Contest

    题目地址:CF1100B Build a Contest 水题,比赛时没想就敲了个 \(O(n^2)\) 的暴力上去,结果过了Pretest,然后被Hack了 两个数组: \(c_i\) 表示 \(i ...

  2. RabbitMQ四种交换机类型介绍

    RabbitMQ  原文地址: https://baijiahao.baidu.com/s?id=1577456875919174629&wfr=spider&for=pc 最新版本的 ...

  3. Python运维开发基础09-函数基础【转】

    上节作业回顾 #!/usr/bin/env python3 # -*- coding:utf-8 -*- # author:Mr.chen # 实现简单的shell命令sed的替换功能 import ...

  4. 移动硬盘和u盘的区别

    移动硬盘和U盘都属于便携性存储器,用于计算机之间的数据交换.但移动硬盘和U盘的区别还是非常大的,包括内部构造.容量以及整体外观上. 移动硬盘又分为机械移动硬盘和固态移动硬盘两种,主要区别在于内置的存储 ...

  5. 阿里云服务器上通过Docker部署redmine

    背景:在日常工作的过程中会遇到各种各样的问题,每个问题来了之后需要花时间解决.这里就面临两个问题. 1:问题责任不明确,有时候会遇到数据库或者物理服务器的问题,这时候就需要把相应问题指派给相应的人,传 ...

  6. kafka组件makemirror处理跨机房业务的应用

    业务背景:app分散在不同的idc厂商不同的地域,产生业务数据都向一个kafka中进行处理,这些数据比较分散,如果一时网络抖动或者其他因素,数据就丢失了app --> kafka --> ...

  7. VC++ 错误

    1.error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup解决方 ...

  8. 加载UI工程的csb,以及纹理缓存情况

    以plist+PNG模式加载csb,并播放UI工程做的动画,用法如下 local Layer = cc.CSLoader:createNode("res/yk/interface/loadi ...

  9. sudo初级授权设置

    linux中,不可能人人都是用root用户去修改一些文件或者操作,所以一般需要用到对用户的权限控制,linux中可以是sudo来实现 首先,权限控制的文件中 /etc/sudoers中进行配置,文件为 ...

  10. Android启动模式之singleinstance的坑

    前言 在实际应用中,使用singleinstance启动模式时,会遇到一些奇奇怪怪的问题.Android有四种启动模式,分别是standard,singleTop,singleTask,singleI ...