初始node 三
這幾天又開始瘋狂學習了哈哈
1.each與forEach
each是art-template的模板語法
{{each 陣列}}
<li>item</li>
{{/each}}
301 永久重定向 瀏覽器會記住
302 臨時重定向 瀏覽器不記憶
2.模組系統
1.EcmaScript語言
2.核心模組
3.第三方模組
common.js模組規範 檔案作用域 通訊規則。在node中js還有模組。
3.載入與匯出的使用規則
var foo = 'bar';
function add(x,y){
return x+y;
}
exports.add = add;
// 如果一個模組需要直接匯出一個成員,而非是一個物件
// module.exports = add
//1.使用reuire方法載入物件
// 執行被載入模組中程式碼
// 得到被載入模組中exports匯出的介面物件
//2. 使用exports介面物件來匯出模組中成員
// 可以node中每個模組中都有一個自己的module物件
// 在module物件中,有一個成員叫exports
// var module = {
// exports:{
// }
// }
// 無論誰來require我,在程式碼最後一句是
// return module.exports
// 因為在每次匯出介面成員時,都需要把匯出的module.exports.xxx=xxx
// 太麻煩,所以在node中module.exports = exports
// 所以exports是module.exports的一個引用
// 如果給exports重新賦值就不管用
// 如果是module.exports = 'hello';
// exports.foo = 'world';
// 給exports重新賦值會斷開引用,同理給module.exports重新賦值也會斷開引用
4.優先從快取載入
由於已經從a中載入過了,所以不會從b中再次載入。就直接從快取中載入,這樣就避免了重複載入
5.require方法載入
require時,判斷模組是哪種型別。如果是非路徑形式的模組標識,就是其他系統模組
核心模組的本質也是檔案,已經被編譯到了二進位制檔案中,我們只需要按照名字來載入就可以了。
第三方模組,凡是第三方模組都必須通過npm來下載,使用的時候就可以通過require(‘包名’)的方式進行載入才可以使用
var template = require(‘art-template’)
先找到當前檔案中的node_modules目錄
然後找到node_modules/art-template
然後找到node_modules/art-template/package.json檔案
然後找到node_modules/art-template/package.json的main屬性
如果main入口檔案沒有寫要做什麼就預設載入index.js
如果所有條件都不會成立,就會進入上一級目錄中node_modules目錄查詢,如果上上級沒有還沒有,繼續向上找,值到找到磁碟根目錄
6.包說明檔案
// 包描述檔案
//package.json保留了下載第三方包
// 包說明檔案 描述專案依賴
// npm i art-tempalte --save
// 就是依賴,就是當前專案依賴了art-template
// npm init -y
// 自動建立檔案
7.npm常用命令
// npm 下載
// npm 命令列工具
// npm i -g npm 升級npm
// npm unnistall 包名 只刪除,如果有依賴項,依然會保留
// npm unnistall 包名 --save 刪除同時刪除依賴
8.express安裝
npm i express
const express = require('express');
// 建立server伺服器 express()相當於建立了一個伺服器
var app = express();
app.get('/',function(req,res){
res.end('hello world');
})
app.get('/about',function(req,res){
res.send('你好,我是express');
})
app.listen(3000,function(){
console.log('app is runnig at 3000');
});
// 如何開放資源 :3000/public/main.js
// 指定公開靜態開放目錄 app.use('/public/',express.static('./public'));
// 就不用自己寫了
app.use('/public/',express.static('./public/'));
9.大致瞭解express
在express引數中,可以直接通過req.query來獲取引數,查詢字串
在expree中有如何使用模板引擎的更好方法,res.render(‘檔名’,{模板物件})
雖然有點累,但是大家加油!!!
相關文章
- Node 中 Buffer 的初始化及回收
- Node.js三Node.js
- node 除錯三種方式除錯
- Node.js教程第三篇—— Node.js 流Node.js
- Java陣列初始化三種方式Java陣列
- 陣列的三種初始化方式陣列
- 搭建node服務(三):使用TypeScriptTypeScript
- 精盡MyBatis原始碼分析 - MyBatis初始化(三)之 SQL 初始化(上)MyBatis原始碼SQL
- 淺談OC物件初始化的三種姿勢物件
- Docker系列——Grafana+Prometheus+Node-exporter微信推送(三)DockerGrafanaPrometheusExport
- 大咖說*圖書分享-Node佈道師狼叔|三卷書詳解Node.jsNode.js
- ThinkPHP6 原始碼閱讀(三):應用程式初始化PHP原始碼
- Vue原理解析(三):初始化時created之前做了什麼?Vue
- 初始dockerDocker
- 初始flaskFlask
- 初始scrapy
- 初始xpath
- 初始PythonPython
- JVM初始JVM
- Vue 原始碼解析(例項化前) – 初始化全域性API(三)Vue原始碼API
- Vue 原始碼解析(例項化前) - 初始化全域性API(三)Vue原始碼API
- spring4.1.8初始化原始碼學習三部曲之三:AbstractApplicationContext.refresh方法Spring原始碼APPContext
- win10魔獸爭霸三無法初始化directx怎麼辦_win10魔獸爭霸三不能初始化directx解決步驟Win10
- 【小白學PyTorch】4 構建模型三要素與權重初始化PyTorch模型
- C# 9.0新特性詳解系列之三:模組初始化器C#
- ps初始操作
- 02初始LinuxLinux
- AI考拉技術分享-Node基礎架構專題(三)AI架構
- 類內初始化、預設初始函式、=default;函式
- Node.js學習之(第三章:簡易小demo)Node.js
- 三大角度PK,Go語言和Node.js誰勝誰負?GoNode.js
- 初始化CSSCSS
- 初始mysql以及建立MySql
- Webpack 初始化Web
- 1. 初始SpringMVCSpringMVC
- 初始化 (Initialization)
- css初始化CSS
- NioEventLoopGroup初始化OOP