node.js 需要注意知识点
复习node.js 需要注意知识点--(重点)
2.1:参数传递获取造型
客户端脚手架(发) (参数传递) node.js(收)
-发ajax this.axios.get("http://127.0.0.1:3000/list?id=9&age=19")
-收 node.js req(request 请求对象)
var id = parseInt(req.query.id);
var age = parseInt(req.query.age);
错误:node.js NaN 参数错误
2.2:完成一个功能使用哪条SQL node.js
(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语法写错了
node.js 需要注意知识点的更多相关文章
- Node.js的基础知识点
一,语言 和 环境(平台) 之间的关系 1,浏览器环境 中的 Javascript 浏览器中 Javascript 的组成部分 ECMAScript核心 + DOM + BOM 2,Node环境 中的 ...
- Node.js的知识点框架整理
背景:因为appium是基于Node.js的,所以想看一下Node.js.但是发现很多资料的顺序看起来有点颠倒.然后就一面看资料一面整理了一下大概的知识点框架,希望对自己对别人有用. 本文不包含nod ...
- Node.js知识点学习
Node.js知识点学习 一.基本概念 Node.js,或者 Node,是一个可以让 JavaScript 运行在服务器端的平台.可以说,Node.js开创了javascript模块化开发的先河,早期 ...
- Node.js实用知识点
本文介绍如何使用nodejs 简单的HttpServer 调试nodejs 基础路由 nodejs配置开发和生产环境 nodejs核心模块一览 express用法 文件I/O nodejs模块 nod ...
- Node.js知识点详解(一)基础部分
转自:http://segmentfault.com/a/1190000000728401 模块 Node.js 提供了exports 和 require 两个对象,其中 exports 是模块公开的 ...
- Node.js:Buffer浅谈
Javascript在客户端对于unicode编码的数据操作支持非常友好,但是对二进制数据的处理就不尽人意.Node.js为了能够处理二进制数据或非unicode编码的数据,便设计了Buffer类,该 ...
- 我的Node.js处女作
前言 很高兴我的node.js处女作开发完成了,目前还在优化完善阶段,经历两周的紧张沟通和开发,工作总算搞一段落.选用node.js 一是因为这次的业务逻辑相对来说简单想拿node练练手,二就是相对来 ...
- Node.js 爬虫初探
前言 在学习慕课网视频和Cnode新手入门接触到爬虫,说是爬虫初探,其实并没有用到爬虫相关第三方类库,主要用了node.js基础模块http.网页分析工具cherrio. 使用http直接获取url路 ...
- Node.js 自学之旅
学习基础,JQuery 原生JS有一定基础,有自己一定技术认知(ps:原型链依然迷糊中.闭包6不起来!哎!) 当然最好有语言基础,C#,java,PHP等等.. 最初学习这个东西的原因很简单,在园子里 ...
随机推荐
- 洛谷NOIp热身赛 T2123 数列游戏
题目背景 此题为改编题,特别鸣谢倪星宇同学. 有一次,HKE和LJC在玩一个游戏. 题目描述 游戏的规则是这样的:LJC在纸上写下两个长度均为N的数列A和B,两个数列一一对应.HKE每次可以找两个相邻 ...
- JVM参数的配置及意义
JVM参数设置.分析 因为在工作中遇到了JVM参数的配置,不明白,网上搜索发现一篇好文,转载至:https://www.cnblogs.com/redcreen/archive/2011/05/04/ ...
- nginx::配置https/反向代理
vim /etc/nginx/nginx.conf user nginx; worker_processes ; error_log /var/log/nginx/error.log warn; pi ...
- jhipster入门
环境: 阿里云linux /////////////////////////////////////////////////////////////////////yum install java-1 ...
- 使用JRebel插件实现SpringBoot应用代码热加载
前言 在实际的开发过程中,我们经常修改代码之后,手动的重启项目,查看修改效果.那么有没有一种方式能够快速的.自动的帮我们将修改代码自动更新,避免手动重启,从而提高开发效率呢?是有的,在我之前的文章里面 ...
- 下载达 10 万次的 IDEA 插件,K8s 一键部署了解一下?
作者 | 铃儿响叮当 导读:涉及开发的技术人员,永远绕不开的就是将应用部署到相应服务器上,本文将给大家讲解:对于容器服务 ACK,怎么实现真正"一键部署",提高开发部署效率,在 K ...
- Core3.0的 安装与坑坑坑!!!
Core3的 SDK下载地址是:https://dotnet.microsoft.com/download/dotnet-core/3.0 ! 不要下载preview8!!!,请先下载 previe ...
- Android Studio配置Socks5代理后Gradle运行不正常
第一次在Mac上运行Android Studio,遇到了一系列问题,其中一个代理问题搞得我是不知所措,在此记录. 如果你遇到了如下图的问题,那么恭喜你你可能已经找到了解决方案也就是本文: 一般,我们为 ...
- SQLAlchemy的基础使用
一.ORM 与 SQLAlchemy 简介 ORM 全称 Object Relational Mapping, 翻译过来叫对象关系映射.简单的说,ORM 将数据库中的表与面向对象语言中的类建立了一种对 ...
- swift 实现iOS手势密码、指纹密码、faceID
本博客包含了如何实现iOS手势密码.指纹密码.faceID全步骤,包括了完整的代码. 先附上demo地址https://github.com/Liuyubao/LYBTouchID,支持swift3. ...