複習node.js 須要注意知識點--(重點)vue
2.1:參數傳遞獲取造型node
客戶端腳手架(發) (參數傳遞) node.js(收)ios
-發ajax this.axios.get("http://127.0.0.1:3000/list?id=9&age=19")ajax
-收 node.js req(request 請求對象)sql
var id = parseInt(req.query.id);vue-cli
var age = parseInt(req.query.age);axios
錯誤:node.js NaN 參數錯誤瀏覽器
2.2:完成一個功能使用哪條SQL node.jsapp
(1)登陸:函數
-參數:用戶名密碼 uname upwd
-sql:SELECT uname,upwd FROM xz_login
WHERE uname = ? AND upwd = md5(?)
用戶名或密碼錯 result.length == 0
(2)商品列表(分頁):
-參數:pno 頁碼 pageSize 頁大小
-sql SELECT id,img_url,price,title FROM xz_product
LIMIT ?,?
? (pno-1)*pageSize
? pageSize
-sql SELECT count(id) FROM xz_product;
Math.ceil(20/pageSize); 向上取整
(3)購物車:
(0)列表 SELECT id,name,price,title,count FROM xz_cart;
(1)添加
參數:pid 商品編號 price 商品價格 count 數量
-查詢當前商品是否在購物車中
SELECT id FROM xz_cart WHERE pid = ?
-若是商品己經存在 更新數量
UPDATE xz_cart SET count = ? WHERE id = ?
-若是商品不存在 添加
INSERT INTO xz_cart VALUES(null,pid,price,count,now())
(2)計算合計 腳手架計算屬性
(3)修改(購物車中商品數量)
參數:id購物車項目id count 數量
sql:UPDATE xz_cart SET count = ? WHERE id = ?
(4)刪除[多選]
參數:uid 誰的購物車 id=1,2,3
字符串拼接 1,2,3
sql:DELETE FROM xz_cart WHERE id IN (1,2,3)
(5)建立訂單:
-參數:uid 購物車用戶id
-查詢購物車中數據 SELECT id,uid,price FROM xz_cart;
-添加訂單表 INSERT INTO xz_order VALUES(?,?....)
2.3:node.js 非阻塞[高效 無序] 若是有功能須要嚴格順序
sql1
pool.query(sql1,(err,result)=>{
//sql1 必定執行結束 結果
sql2
pool.query(sql2,)
});
3:學子商城--新聞列表
查看昨天項目 xampp node.js vue-cli
3.1:修改腳手啓動時顯示Home 組件
默認腳手路徑 http://127.0.0.1:8080/#/
{path:'/',component:HelloContainer},
修改:當腳手架訪問 / 讓瀏覽器自動將地址 /修改/Home
功能: 跳轉
{path:'/',redirect:'/Home'}
{path:'/Home',component:Home},
3.2:修改App.vue 組件
4:學子商城--新聞列表
4.1:建立按鈕 "加載更多..." mint-ui
-import {Button...} from "mint-ui"
-Vue.component(Button.name,Button);
-<mt-button type="primary" size="large">加載更多...</mt-button>
4.2:建立過濾器 格式化日期對象 建立全局過濾器
-建立過濾器main.js
Vue.filter(過濾器名稱,function(val){
-依據參數建立日期對象
-年 月 日 小時 分 鍾 秒
-返回字符串 Y-M-D h:mi:s
});
-調用過濾器組件模板
{{item.ctime | 過濾器名稱}}
4.3: 點擊按鈕 "加載更多..." 查看下一頁
-爲加載更多按鈕綁定點擊事件
-建立函數加載更多 {下一頁}
-遇到問題:顯示下一頁內容上頁內容覆蓋
但願保存上一頁內容
this.list = [];
this.list = result.data.data;
var rows = this.list.concat(result.data.data);
this.list = rows;
5:學子商城--商品列表
5.1:分析查詢表
-查詢當前頁內容
xz_laptop 商品表
xz_laptop_pic 商品圖片表
商品編號 商品標題 商品價格 商品圖片
lid title price md
(1)查詢表保存在 FROM後
(2)爲每張表建立別名
(3)查找兩張表哪列有關聯的 = <= >=
SELECT l.lid,l.title,l.price,p.md
FROM xz_laptop l,xz_laptop_pic p
WHERE l.lid = p. laptop_id
GROUP BY l.lid
LIMIT ?,?;
app.js
5.2:腳手架
-建立空組件 src/components/goods/GoodList.vue
-配置訪問路徑 /GoodsList
-測試
-設置佈局
調錯/添加按鈕/添加點擊事件
常見錯誤
(1) net::ERR_CONNECTION_RESET node.js程序出錯中止工做
解決:查看node.js 控制檯出錯信息
(2)error in your SQL syntax
緣由:sql語法寫錯了