//模塊化
--有利於分工協做
--高內聚,低耦合
--實現代碼複用
cmd(seajs) 就近依賴 amd(requirejs) 依賴前置
commonjs (node後臺規範)
閉包,命名空間(不能徹底避免命名衝突,調用過長)
-- 定義模塊化 (建立一個js文件)
-- 使用模塊 ( require )
-- 導出模塊 ( exports / module.exports)
eg:(如圖)
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
//文件模塊
引用模塊有緩存機制
代碼都會執行的,導出後,,別人纔會執行
delete require.cache['文件地址'] //刪除緩存
引用屢次,只會執行一次
//第三方模塊
npm 管理後臺文件的 / 管理前臺文件的 bower
放置別人模塊的地方 npm
下載文件經過npm
第三方模塊能夠直接引用包名 var str = require('包名')
先找當前目錄下 node_modules 文件,找到名字相同的文件夾,找到package.json 看裏面的 mian , 運行main 對應的文件 ,找不到會向上級查找node_nodules文件,直到找到爲止,找不到就報錯
module.paths 根據這個目錄去找 console.log( module.paths )
下載的第三方必須放在 node_modules 文件夾下
1.(全局下載: 只在命令行下使用 )
nrm工具(切換源) npm install nrm -g
nrm test 查看
nrm add zf http://172.18.1.139/ 添加一個源
nrm del zf1 刪除一個源
nrm use taobao 切換源
nrm ls 展現源
nrm install nodeppt -g 製做ppt
nodeppt stat -p 9090 改端口
2.本地下載: 在代碼裏使用 )
記錄安裝過的全部模塊 npm init -y (記錄全部依賴關係) pakage.json 安裝完後的包都會記錄在這個文件中
1.代碼依賴 (開發上線須要)
npm install jquery --save (-S 縮寫)
2.開發依賴 (只在開發使用) 工具
npm install babel-core --save-dev ( -D 縮寫)
gulp 壓縮
npm uninstall gulp --save 或者 --save-dev
less --D 、 webpack --D 、 bootstrap --S 、 animate.css -S
npm info jquery 查看可用版本
npm install jquery@2.1.0 -S 安裝指定版本
npm info jquery 查看版本
默認安裝最新版本
3.上傳到 npm
1.先找到帶有pakage.json的文件夾, 切換到npm上 nrm use npm
2.在npm目錄下,就是在帶pakage.json的目錄下
npm addUser 註冊或者登錄 xh abc,,123 270450463@qq.com
npm publish 發佈
bower (管理前臺文件)
安裝bower npm install -g bower
bower install jquery 安裝包
bower install 找回包(誤刪除)
默認安裝到 bower_components文件下
bower 能夠指定目錄安裝
新建文件夾,創建 .bowerrc
往.bowerrc 中添加要安裝的目錄 {"directory":"./js"}
創建一個存放安裝的目錄 例如:文件夾js
//核心模塊 + 內置模塊 ( node 自帶的模塊, 不須要安裝就能夠使用 eg: util )
util 工具模塊
引用核心模塊和第三方模塊同樣
const util = require('util');
console.log( util );
繼承父親全部
child.protoype = new parent();
原型連繼承
__proto__ :
.__proto__ = parent.prototype;
child.protoype = object.create( parent.prototype )
function (pro) { // creat 原型 建立一個函數,將函數的原型指向傳入的原型,new函數new出來的實例上只包含公有方法,賦值給兒子的原型
let Fn = function(){};
Fn.prototype = pro;child.protoype
return new Fn()
}
inherits 繼承 ------------------------------------------------------------------------------
util.inherits( child , parent) //兒子繼承父親
Object.setPrototypeOf( child.protoype , parent.protoype)
call 只能繼承私有的方法
搭建博客 hexo模板
1. npm install hexo-cli -g 提供一個命令 hexo
2. hexo init 新建個文件夾寫博客 而後在這個文件夾中初始化
3. hexo serve 啓動服務 端口號默認 4000
4. hexo -p 8090 改端口
主題
先克隆找好的主題 https://github.com/iissnan/hexo-theme-next.git主題 https://hexo.io/themes/ 主題模板
themes 主題存放地
找到 _config 的配置文件, 修改 theme : hexo-theme-next(主題名)
把本地的博客推到github上
1. hexo g 生成發佈的內容
2. 到git上建立倉庫(名字要求:必須是git的帳號名稱) moyouchen.github.io
3. 找到 _config 的配置文件,配置用戶路徑
deploy:
type: git
repo: https://username:password@github.com/xunhe/xunhe.github.io.git,master // git 的用戶名+密碼
4. npm install hexo-deployer-git -S 安裝插件
5. hexo deploy 提交 不安裝插件不讓提交
訪問地址 :moyouchen.github.io