モジュラーcommonJS
入門
JSは、パフォーマンスのバックエンドを開発するために主にあるcommonJS A仕様nodejs / WebPACKのは実現であります
彼は実現してECMAは/仕様JSです
他のモジュールの仕様:seajs.js / require.js CMD / AMD / UMD ES5
効果
ファイルスコープを持つ変数は、グローバル変数を汚染しないことです
システムモジュール
http
fs
querystring
url
エントリー
require('模块名')
require('模块名').xx 按需引用
パスを指定しないでください:最初のシステムモジュールを行く - >その後、プロジェクト環境からnode_modulesを見つける| bower_components(モジュールに依存) - >が見つかりません
パスを指定します。指定されたパスを見つけるために - >が見つかりません
任意の型をサポートしています
輸出
exports.自定义属性 = 值 | any
バッチは、すべてのプロパティをエクスポート
出力することができる複数回
module.exports = 值 | any
出力一度だけ
ご注意ください
commonJSはモジュラー管理ES6をサポートしていませんnodejsデフォルトの管理モジュールですが、サポートしているすべてのES6 +構文
例:
MOD / a.js
let a =10;
//要想在别的文件中使用 a 变量 需要 exports导出
let b = "abc"
let fn =()=>{
console.log("我是一个函数")
}
exports.aa =a//aa是自己定义的名字
exports.b =b
exports.fn = fn
MOD / b.js
let a =10;
//要想在别的文件中使用 a 变量 需要 exports导出
let b = "abc"
let fn =()=>{
console.log("我是一个函数")
}
//一个Person 类
class Person{
constructor(){
console.log("person")
}
show(){
console.log("show")
}
}
//exports 导出
// exports.aa =a//aa是自己定义的名字
// exports.b =b
// exports.fn = fn
// module.exports = a //10
// module.exports = b //abc
module.exports ={
a:a,
b:b,
fn:fn,
Person:Person
}
//对象中 key = value key可以省略 例如a:a 可以直接写为 a
index.js
//引入 a.js文件
// let a = require("./a")//a.js 的.js可以不写
//路径问题 如果 a.js放在别的路径下 需要修改路径
// let a =require("./mod/a")//现在a.js 在 mod文件夹下
// console.log("a",a)
// a.fn()
//引入 b.js文件
let b =require("./mod/b")
// console.log(b)
let person = new b.Person()
person.show()
NPM
効果
ヘルプあなたはモジュール(パッケージ)をインストールし、自動的に依存関係をインストール、パッケージ管理(追加、削除、更新、すべてのパッケージアイテム)
地球環境にインストール
- コンピュータシステム環境にインストール
- 使用するために、任意の位置で使用することができます
- グローバル通常インストール:コマンドラインツール、足場
npm i 包名 -g 安装
npm uninstall 包名 -g 卸载
プロジェクト環境へのインストール
現在のディレクトリにのみ使用し、あなたがNPMの代わりに実行する必要があります
プロジェクト環境を初期化します
npm init
NPM管理初期化ファイルpackage.json
治療に使用されるパッケージ・lock.json依存ファイル
{
"name": "npm", //项目名称
"version": "0.0.1", //版本
"description": "test and play", //描述
"main": "index.js", //入口文件
"dependencies": { //项目依赖 上线也要用
"jquery": "^3.2.1"
},
"devDependencies": { //开发依赖 上线就不用
"animate.css": "^3.5.2"
},
"scripts": { //命令行
"test": "命令行",
},
"repository": { //仓库信息
"type": "git",
"url": "git+https://github.com/alexwa9.github.io/2017-8-28.git"
},
"keywords": [ //关键词
"test",'xx','oo'
],
"author": "wan9",
"license": "ISC", //认证
"bugs": {
"url": "https://github.com/alexwa9.github.io/2017-8-28/issues"//问题提交
},
"homepage": "https://github.com/alexwa9.github.io/2017-8-28#readme"//首页
}
プロジェクトの依存関係
唯一の現在のプロジェクトで使用され、ライン上で、これも頼りにする必要があります --save
//安装
npm i 包名 --save
npm install 包名 -S
npm install 包名@x.x.x -S
//卸载
npm uninstall 包名 --save
npm uninstall 包名 -S
開発依存性
唯一の行に、現在のプロジェクトで使用することに依存する必要はありません。 --save-dev
npm install 包名 --save-dev
npm install 包名 -D
ビューパッケージ
npm list 列出所有已装包
npm outdated 版本对比(安装过得包)
npm info 包名 查看当前包概要信息
npm view 包名 versions 查看包历史版本列表
そして、任意の依存関係をインストール
npm install
指定されたpackage.json内に設置されたすべてのパッケージ
バージョン制約
^x.x.x 约束主版本,后续找最新
~x.x.x 保持前两位不变,后续找最新
* 匹配任何版本
x.x.x 定死了一个版本
ソースを選択
npm install nrm -g 安装选择源的工具包
nrm ls 查看所有源
nrm test 测试所有源
nrm use 切换源名
リリースパッケージ
- 公式サイトの登録
- ログイン
npm login
ログイン- ユーザー/パスワード/メールアドレスを入力
- パッケージの作成
npm init -y
- 入学index.jsを作成します
- 書き込み、出力
- 解除
npm publish
- イテレーション
- 版数
npm publish
- [削除]
npm unpublish
パッケージのリリース、イテレーション、削除は、パッケージディレクトリにする必要があります
削除パッケージは時々メッセージを送信する必要があります
糸
インストール
注:時間を節約するために、糸をインストールするには、NPM I糸-gを使用しませんが、糸の都合により、レジストリー変数と環境変数に、ハードの書き込みを保証するために、グローバルなポストインストールパッケージをアーカイブをダウンロードします
使用
新しいプロジェクトを初期化します
yarn init
依存関係を追加します。
yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]
別の依存関係のカテゴリへの依存
彼らはに追加されたdependencies
、devDependencies
、peerDependencies
およびoptionalDependencies
カテゴリ:
yarn add [package] --save | -S
yarn add [package] --dev | -D
yarn add [package] --peer
yarn add [package] --optional
アップグレードの依存関係
yarn upgrade [package]
yarn upgrade [package]@[version]
yarn upgrade [package]@[tag]
依存関係を削除します
yarn remove [package]
すべてのインストールプロジェクトを依存しています
yarn
若しくは
yarn install
グローバルにインストール
yarn global add [package] //global的位置测试不能变
yarn global remove [package]
BOWER
インストール亭
npm install -g bower
地球環境へのインストールパッケージ
bower i 包名 -g 安装
bower uninstall 包名 -g 卸载
プロジェクト環境へのインストールパッケージ
プロジェクト環境を初期化します
bower init
サードパーティ製のパッケージ管理プロファイルbower.json
プロジェクトの依存関係
唯一の現在のプロジェクトで使用され、ライン上で、これも頼りにする必要があります --save
//安装
同npm
bower install 包名#x.x.x -S 指定版本使用#
//卸载
同npm
開発依存性
唯一の行に、現在のプロジェクトで使用することに依存する必要はありません。 --save-dev
同npm
EXPRESS
nodejsライブラリは、基本的には、作業の簡素化は、入力する]をクリックします公式サイトを、同様のあるKOA
機能
第二に、パッケージ、非侵襲的、形状を強化
Webサービスを構築します
let express=require('express')
let server=express()
let server.listen(端口,地址,回调)
静的リソースを管理します
server.use(express.static('./www'));
例:
//引入 express框架
const express = require("express")
//创建 web服务器
const app = express()
//监听端口
app.listen(3000,"localhost",()=>{
console.log("监听端口3000")
})
//资源托管
// express.static("")
app.use(express.static("./www"))
//处理接口响应
app.get("/api/goods",(req,res)=>{
console.log("godds接口")
res.end()
})