0410
張三的博客項(xiàng)目總結(jié)
- 請(qǐng)問(wèn)項(xiàng)目用到了哪些技術(shù)仑荐?
- Node.js
- Modules:
- CommonJS的模塊化
- ECMAScript Module
- Modules:
- Expresss()框架
- MongoDB數(shù)據(jù)庫(kù)
- Mongoose庫(kù)
- Schema()
- Model()
- MVC:APP的設(shè)計(jì)模式/思想
- Model:模型(數(shù)據(jù))
- View:視圖
- Controller:控制器
- BootStrap:構(gòu)建布局
- EJS:視圖模版
- Node.js
NPM VS NPX
Npm : Node.js的軟件包管理器(Node.js Package Manager )
NPX: Node.js的軟件包執(zhí)行器 (Node.js Package Executor)
express Generator
定義
express Generator是快速生成Express APP的腳手架牙躺。
Node.js APP 的開發(fā)步驟
第1步:項(xiàng)目初始化
- 創(chuàng)建package.json文件(模塊包腺办,管理項(xiàng)目用到模板)
mkdir myApp
cd myApp
npm init --yes
npm init -y
第2步. 創(chuàng)建項(xiàng)目目錄結(jié)構(gòu)
myApp
- models:存放數(shù)據(jù)模型模塊 module.exports = Blog
- views: 存放ejs視圖文件
- controllers: 存放控制器:處理請(qǐng)求的回調(diào)
- routes: 存放路由表
- public: 存放靜態(tài)資源(圖片、css逆瑞、js荠藤、字體)
- app.js: 主文件(App入口)
- package.json: 描述App(app的名字呆万、描述车份、關(guān)鍵字谋减、版本扫沼、第三方依賴)
第3步:安裝項(xiàng)目所需模塊
一鍵安裝npm i
- express
- mongoose
- ejs
- express-ejs-layouts
第4步:引入模塊(注意順序引入)
用戶界面
node.js
內(nèi)置模板
- path:用于處理(拼接)路徑段;
- fs:用于處理文件系統(tǒng)缎除;
- http:用于創(chuàng)建服務(wù)器;
第三方模板
- express: 構(gòu)建node.js APP;
- mongoose: 與mongoDB通信;
- Ejs:創(chuàng)建視圖;嵌入式Javasript的hitml模板
-<% %>
:注入動(dòng)態(tài)數(shù)據(jù)(變量、對(duì)象名器罐、函數(shù)名梢为、語(yǔ)句) - nodemon:開發(fā)?
- express--ejs-layouts:用于構(gòu)建視圖的模板轰坊;
- 第一步:安裝npm install ejs?肴沫?粟害?
本地模塊
- Model: 如: Blog數(shù)據(jù)模型
模塊化
html沒(méi)有模塊的概念
- css使用@import導(dǎo)入css模塊
- 不要把所以的css都寫在一個(gè)文件里
- 謹(jǐn)慎使用@import 規(guī)則(1.必須放在css文件首行 2.注意:不要引入字體)
- @import會(huì)發(fā)起請(qǐng)求
- ES 6使用 import 和export導(dǎo)入模塊
第5步:創(chuàng)建app.js的基本結(jié)構(gòu)
App.js
//引入模塊
const express=require('express')
//實(shí)例化App
const app = express()
//配置app實(shí)例
app.use('',callback) //為指定路徑注冊(cè)回調(diào)函數(shù)
app.set(key, value) //設(shè)置一個(gè)值,為以后調(diào)用
//連接數(shù)據(jù)庫(kù)
const uri = ''
mongoose.connect(uri)
.then()
.catch()
//配置路由
網(wǎng)站的基本·原理
- 搭建一個(gè)網(wǎng)站颤芬,需要做的三件事:
- 買一個(gè)域名:域名是ip地址的別名悲幅。域名管理面板下設(shè)置
- 域名解析:把ip地址綁定到域名上套鹅;
- 買一個(gè)服務(wù)器:
- 每個(gè)服務(wù)器都是一個(gè)ip地址。
- ip地址綁定一個(gè)域名汰具。
- 編寫一套程序:
-靜態(tài)網(wǎng)頁(yè)語(yǔ)言:HTMl css- 動(dòng)態(tài)網(wǎng)頁(yè)語(yǔ)言:index.pjp 卓鹿、 index.jsp、 index.asp郁副、
- 默認(rèn)頁(yè):index.html index.thm index.php
網(wǎng)站工作原理
- 網(wǎng)站分為兩種:
靜態(tài)網(wǎng)站:沒(méi)有用到數(shù)據(jù)庫(kù)减牺,我的數(shù)據(jù)寫死html頁(yè)面里;- html 不支持變量
動(dòng)態(tài)網(wǎng)站:數(shù)據(jù)從數(shù)據(jù)里注入到頁(yè)面里存谎;
- html 不支持變量