复习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 需要注意知识点的更多相关文章

  1. Node.js的基础知识点

    一,语言 和 环境(平台) 之间的关系 1,浏览器环境 中的 Javascript 浏览器中 Javascript 的组成部分 ECMAScript核心 + DOM + BOM 2,Node环境 中的 ...

  2. Node.js的知识点框架整理

    背景:因为appium是基于Node.js的,所以想看一下Node.js.但是发现很多资料的顺序看起来有点颠倒.然后就一面看资料一面整理了一下大概的知识点框架,希望对自己对别人有用. 本文不包含nod ...

  3. Node.js知识点学习

    Node.js知识点学习 一.基本概念 Node.js,或者 Node,是一个可以让 JavaScript 运行在服务器端的平台.可以说,Node.js开创了javascript模块化开发的先河,早期 ...

  4. Node.js实用知识点

    本文介绍如何使用nodejs 简单的HttpServer 调试nodejs 基础路由 nodejs配置开发和生产环境 nodejs核心模块一览 express用法 文件I/O nodejs模块 nod ...

  5. Node.js知识点详解(一)基础部分

    转自:http://segmentfault.com/a/1190000000728401 模块 Node.js 提供了exports 和 require 两个对象,其中 exports 是模块公开的 ...

  6. Node.js:Buffer浅谈

    Javascript在客户端对于unicode编码的数据操作支持非常友好,但是对二进制数据的处理就不尽人意.Node.js为了能够处理二进制数据或非unicode编码的数据,便设计了Buffer类,该 ...

  7. 我的Node.js处女作

    前言 很高兴我的node.js处女作开发完成了,目前还在优化完善阶段,经历两周的紧张沟通和开发,工作总算搞一段落.选用node.js 一是因为这次的业务逻辑相对来说简单想拿node练练手,二就是相对来 ...

  8. Node.js 爬虫初探

    前言 在学习慕课网视频和Cnode新手入门接触到爬虫,说是爬虫初探,其实并没有用到爬虫相关第三方类库,主要用了node.js基础模块http.网页分析工具cherrio. 使用http直接获取url路 ...

  9. Node.js 自学之旅

    学习基础,JQuery 原生JS有一定基础,有自己一定技术认知(ps:原型链依然迷糊中.闭包6不起来!哎!) 当然最好有语言基础,C#,java,PHP等等.. 最初学习这个东西的原因很简单,在园子里 ...

随机推荐

  1. windows离线安装sublime插件:ctags

    网络上一堆安装ctags教程,可都是在线安装. 花了点时间摸索出了离线安装教程. 1. 准备好sublime 和 package control sublime我用的版本是text 2. text 3 ...

  2. js中submit和button的区别

    今天写一个js验证 遇到点小坑 记录一下 button-普通按钮,submit-提交按钮. submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了,submit和bu ...

  3. JZOJ5771【NOIP2008模拟】遨游

    Description      MWH寒假外出旅游,来到了S国.S国划分为N个省,第i个省有Ti座城市,编号分别为Ci1,Ci2,……CiTi(各省城市编号不会重复).所有城市间有M条双向的道路连接 ...

  4. 一个关于内联优化和调用约定的Bug

    很久没有更新博客了(博客园怎么还不更新后台),前几天在写一个Linux 0.11的实验 [1] 时遇到了一个奇葩的Bug,就在这简单记录一下调试过程吧. 现象 这个实验要求在Linux 0.11中实现 ...

  5. python编程系列---Pycharm快捷键(更新中....)

    以下是我常用到的Pycharm快捷键(还有很多,只是我暂时用的最多的就这些): 在开发过程中,经常使用一些快捷键会大大提高开发效率,不要因为看这多而不用,常用的就那些,用得多就都记住了,脱离鼠标,逼格 ...

  6. 第九周课程总结&实验报告(七)

    实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负数号票的情况. 实验代码 pac ...

  7. fullpage.js报如下错的解决办法

    控制台报错:fullPage: Fullpage.js version 3 has changed its license to GPLv3 and it requires a `licenseKey ...

  8. java 连续数字数组分组

    问题: 1. 将Lis list = Arrays.asList(1,2,3,5,8,9,10), 拆分成 [1,2,3] .[5]. [8,9,10] , 2. 再传入一个数字 9, 将匹配数字9的 ...

  9. Vue 的准备

    ## .es6的基本语法 ​ let---是局部作用于,不会存在变量提升,变量不能重复声明 ​ const--局部作用域,不会存在变量提升 不能重复声明,只声明常亮,不可变的量 ​ ```javasc ...

  10. windows 10 环境下 使用Anaconda搭建 TensorFlow 环境

    ##大致步骤 1 安装Anaconda 2 在Anaconda中建立虚拟TensorFlow的虚拟环境 建立虚拟环境的命令是 conda  create -n tensorflow python=3. ...