- 博客(335)
- 资源 (1)
- 收藏
- 关注
原创 在express中利用中间件crypto中的MD5进行加密
在express中利用中间件crypto中的MD5进行加密const crypto = require('crypto');// 签名对象let obj = crypto.createHash('md5');// 加密数据obj.update('12345');// 以十六进制返回结果let str = obj.digest('hex');console.log(str);...
2018-08-04 16:47:29 1015
原创 express的总结
express包含的内容:1)主体2)cookie,session3)数据4)模板引擎5)路由需要用到的插件:express---web框架express-static------解析静态资源cookie-parser-------解析cookie,服务端读取客户端设置的cookiecookie-session------解析sessionbody-pa...
2018-08-02 22:28:31 385
原创 数据库
后台提供的数据存放在数据库1、关系型数据库----常用的数据库:MySQL Oracle SQLServer Access db2 fox pro MySQL:优点:免费、适合中小网站、性能非常不错缺点:集群、容灾稍微弱一些 Oracle:挺贵的、适合大型应用、金融级和银行常用优点:性能不错、集群、容灾性非常强缺点:不免费(挺...
2018-08-02 22:28:09 231
原创 使用express中提供的Router
在express中使用路由Router:把不同的目录对应到不同的模块,实现功能的分开。相当于一个子服务,有router.post() router.get router.use具体的例子const express = require('express');let server = express();server.listen(8080);// 目录1:/user 创...
2018-08-02 19:51:15 3133
原创 模板引擎jade/ejs,模板适配
后台模板引擎:生成页面,有ejs------温和的,非侵入式,可以往里面加功能,弱依赖; jade------破坏性、侵入式(和普通的html不能共存),强依赖,离开了jade页面就不能工作了在express中进行模板适配的中间件:consolidate jade---强依赖1)jade----首先在项目的根目录下安装jade2)书写.jade文件,支持缩进规定层级和略写3...
2018-07-31 22:26:19 676
原创 express中处理cookie/session
1、cookie的处理设置cookie:给客户端发送cookie,通过res.cookie('属性名',‘值’,{signed:boolean,path:'/',maxAge:毫秒}),req.secret='fdfsdfs'const express = require('express');let server = express();server.listen(8080);...
2018-07-31 21:49:45 3424
原创 express中的get post use处理,链式操作,封装中间件
1、在express中的get处理表单处理的数据,即服务器获取get方式提交的数据,通过req.query获取提交的数据,格式是json// 客户端代码<!doctype html><html> <head> <meta charset="utf-8"/> </head> <body..
2018-07-31 15:47:34 1725
原创 express安装、配置、接受请求、响应
express安装、配置、接受请求、响应1、在cmd中进入项目的根目录下,安装express:npm install express2、express只是在原生的nodejs中添加了一些功能,保留了原生的 功能比如res.write()和res.end()都保留,多了res.send()---可以直接返回json格式的数据,而res.write()则会报错3、介绍// ...
2018-07-31 08:48:24 1439
原创 vue中的computed实现原理、vue中响应属性、computed/watch/methods区别
vue中的computed的实现原理---------需要建立数据依赖搜集,动态计算实现原理1)问题:计算属性如何与属性建立依赖关系?属性发生变化又如何通知到计算属性重新计算?如何建立依赖关系?----------利用 JavaScript 单线程原理和 Vue 的 Getter 设计,通过一个简单的发布订阅,就可以在一次计算属性求值的过程中收集到相关依赖2)data 属性初始化 ge...
2018-07-23 16:51:08 3600
原创 windows常用命令行的操作
1)切换当前目录:cd2)创建目录:mkdir3)查看当前目录列表:dir (windows系统) 别名:ls(list)(Linux系统)4)清空当前控制台:cls(windows系统) 别名:clear(Linux系统)5)删除文件:del (windows系统) 别名:rm(Linux系统)6)返回上一级目录...
2018-07-22 21:09:16 258
原创 Node的安装
不推荐使用安装包安装原因:1)以前版本安装的很多全局的工具包需要重新安装2)无法回滚到之前的版本3)无法再多个版本之间切换(很多时候需要特定的版本) 使用NVM的方式安装1)下载:nvm-windows2)解压到一个全英文的路径3)编辑解压目录下的setting.txt文件(不存在则新建) a、root配置为当前nvm.exe所在目录,例:ro...
2018-07-22 21:03:29 240
原创 Node.js一些基础概念
Node.js学习课程的安排Node.js最大的特点就是:非阻塞IO和事件驱动、模块化驱动 Node的基础概念1)node命令的基本用法(1)进入REPL环境:node,进入REPL环境 .exit 在REPL环境,可以测试Node的一些代码和模块进入window的Powershell环境:cmd 执行:powershell 通过命令行执行...
2018-07-21 09:57:13 379
原创 vue-router路由懒加载
vue-router路由懒加载:打包构建应用时,Javascript 包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就更加高效了。结合 Vue 的异步组件和 Webpack 的代码分割功能,轻松实现路由组件的懒加载在创建路由的时候,component属性的值是一个异步函数//异步加载路由组件,可以减少加载...
2018-07-19 22:00:12 605
原创 AMD、CMD、CommonJs、ES6的对比
AMD、CMD、CommonJs、ES6的对比他们都是用于在模块化定义中使用的,AMD、CMD、CommonJs是ES5中提供的模块化编程的方案,import/export是ES6中定义新增的 什么是AMD、CMD、CommonJs?他们之间有什么区别?项目当中是如何使用?1)AMD-异步模块定义AMD是RequireJS在推广过程中对模块定义的规范化产出,它是一个概念...
2018-07-19 11:15:11 59726
原创 vue+node.js+mongodb
vue+node.js+mongodb:书城系统的项目的构建概述1、课程主要讲什么:基于全栈开发一个简易的商城系统2、课程涵盖了哪些内容:商品列表、购物车、地址、结算、订单、登录模块3、课程使用了哪些技术栈:前端使用功能vue全家桶以及ES6语法;后端使用Express框架,DB使用Mongo非关系型数据库 项目整体架构如下图所示 Webpack:代码模块化构建打包...
2018-07-18 08:37:33 3753 1
原创 在vs code中报错:[ts]应为";"
在vs code中报错:[ts]应为";"错误显示如下图所示:报错中会显示报错的文件是setWebGLContext.js,报错类型是[ts]应为";"查看该js文件,发现是关键字写错了将关键字修改过来控制台就不会报错了...
2018-07-05 16:26:05 20165
原创 WebGL的简单介绍
1、WebGL的定义WebGL(Web图形库,Web graphic library)是一种JavaScript API,在不使用插件的情况下,在任何兼容的网页浏览器中呈现交互式2D和3D图形。WebGL通过引入一个与OpenGL ES 2.0紧密相符合的API,可以在HTML5 <canvas> 元素中使用...
2018-07-05 16:20:45 607
原创 在vs code中进行本地调试和开启本地服务器
在vs code中进行本地调试1、首先在VSCode 上装一个插件:Debugger for Chrome ,如下图所示:在搜索框中输入Debugger for Chrome 然后点击安装2、配置文件,从左到右依次点击红圈中的按钮,然后出现launch.json文件,在里面添加配置信息配置信息如下:{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性...
2018-07-05 16:02:43 52027 8
原创 柯里化函数的简单介绍
柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术柯里化其实本身是固定一个可以预期的参数,并返回一个特定的函数,处理特定的需求。这增加了函数的适用性,但同时也降低了函数的适用范围(实质就是利用闭包实现函数柯里化的)...
2018-07-01 14:18:11 254
原创 javascript上Object的方法简单介绍
Object方法1)Object.create():创建一个新对象,使用现有的对象来提供新创建的对象的__proto__参数:proto---新创建对象的原型对象,propertiesObject---可选。如果没有指定为 undefined,则是要添加到新创建对象的可枚举属性(即其自身定义的属性,而不是其原型链上的枚举属性)对象的属性描述符以及相应的属性名称。这些属性对应Object.defin...
2018-06-25 15:00:55 314
原创 Flow的简单介绍
1、什么是Flow是 facebook 出品的 JavaScript 静态类型检查工具,https://flow.org/en/docs/usage/这是其官方文档链接Vue.js 的源码利用了Flow 做了静态类型检查2、为什么使用Flow类型检查的定义:类型检查,就是在编译期尽早发现(由类型错误引起的)bug,又不影响代码运行(不需要运行时动态检查类型),使编写 JavaScript 具有和编...
2018-06-22 21:54:25 8100
原创 vue源码学习笔记
Vue的本质Vue的本质就是用一个Function实现的Class,然后在它的原型prototype和本身上面扩展一些属性和方法。它的定义是在src/core/instance/index.js里面定义使用ES5的方式,即用函数来实现一个class,不用ES6来实现class的原因:在ES5中,是可以往Vue的原型上挂很多方法,并且可以将不同的原型方法拆分到不同的文件下,这样方便代码的...
2018-06-17 20:20:37 2365
原创 vs code
vs code中前端必安装的插件:1、debugger for chrome:用于在vs code里面直接调试js代码一些使用指南的连接:1、vs code插件官网:https://marketplace.visualstudio.com/点击打开链接2、vs code插件离线安装指南:https://blog.csdn.net/wangwei703/article/details/5402071...
2018-06-15 16:53:45 656
原创 Error in mounted hook: "TypeError: this.$refs.list.$el.refresh is not a function"
在子组件scroll.vue中的methods选项中定义方法refresh(),如下所示://当已经存在berre-scroll实例的时候,DOM发生变化时,要对better-scroll实例重新更新 refresh() { this.scroll && this.scroll.refresh() } 然后在父组件music-list.vue中的template调用...
2018-06-12 09:56:32 15544
原创 Error in mounted hook: "TypeError: Cannot set property 'bottom' of undefined"
在子组件scroll.vue中的methods选项中定义方法refresh(),如下所示: //当已经存在berre-scroll实例的时候,DOM发生变化时,要对better-scroll实例重新更新 refresh() { this.scroll && this.scroll.refresh() }然后在父组件music-list.vue中的t...
2018-06-12 09:45:23 16294
原创 使用vue2.0+编写一个音乐播放器所使用到的技术栈
使用vue2.0+编写一个音乐播放器所使用到的技术栈1、Vuex插件:对vue,js编写的项目进行状态管理的模式,用于抽取组件间共享的状态;定义和隔离状态,使代码易维护和结构化2、使用vue.js中的内置组件<transition>定义一些动画,普遍搭配如下:/*定义进入的过程和离开的过程的动画使用过度效果,用时2s完成*/.vm-enter-active,.vm-leave-act...
2018-06-11 15:50:58 1193
原创 vuex的简单介绍
1、vuex的定义1)Vuex 是一个专门为 Vue.js 应用程序开发的状态管理模式,使用插件的形式引进项目中2)集中存储和管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化3)每一个 Vuex 应用的核心就是 store(仓库),new Vue.store({...}),“store”基本上就是一个容器,它包含应用中大部分的状态 (state)...
2018-06-10 22:21:16 6943 2
原创 javascript对象、DOM对象、Browser对象、HTML对象
在前端中的一些对象的描述:1、JavaScript对象:8个对象Number String Boolean Array Date RegExp Math 全局属性和函数2、Browser对象:6个对象window对象 screen对象 location对象 history对象 navigator对象 存储对象(localSt...
2018-06-10 21:43:51 2021
原创 vue中的混入对象mixins
vue中的混入对象mixins的定义 是一种分发 Vue 组件中可复用功能的非常灵活的方式。混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被混入该组件本身的选项mixins:Array(Object)选项合并:当组件和混入对象含有同名选项时,这些选项将以恰当的方式混合1)同名钩子函数将混合为一个数组,因此都将被调用(组合)2)混入对象的钩子将在组件自身钩子之前调用(调用顺...
2018-06-10 21:09:14 2064
原创 Cannot read property '$el' of undefined at VueComponent
在.vue文件的template标签里面引用子组件,如下所示<scroll class="middle-r" ref="lyriclist" :data="currentLyric && currentLyric.lines"></scroll>然后再<script>中的methods属性中的一个方法去获取到该对象:由于<
2018-06-10 16:55:21 25241 9
原创 Invalid prop: type check failed for prop "radius". Expected Number, got String.
在vue编写的项目中,在浏览器的console报错:Invalid prop: type check failed for prop "radius". Expected Number, got String.如下图所示:在子组件progress-circle.vue的template中的定义如下: <svg :width="radius" :height="radius" viewBox=...
2018-06-09 15:34:26 44239 1
原创 Vue.js is detected on this page. Open DevTools and look for the Vue panel.
要解决 这个问题,则是因为没有开启debug mode,所以要对vue开启debug mode在main.js中书写下面形式:import Vue from 'vue'Vue.config.devtools = true则可以在浏览器调试vue代码...
2018-06-07 22:18:32 28419 4
转载 将本地的项目上传到github仓库中,并对仓库的代码进行更新
一、将本地的项目上传到github仓库中上传代码之前的一些准备工作:1)在github上注册一个账号:github地址2)在本地安装git:git的下载地址完成上述操作就可以开始将本地代码上传到github上了1)登录自己的github账号,在首页点击‘New repository’按钮,新建一个仓库2)然后在创建仓库的界面输入一些仓库的信息,最后点击‘Create r...
2018-05-26 20:44:24 3143 1
原创 在vue中使用axios实现跨域请求并且设置返回的数据的格式是json格式,而不是jsonp格式
在vue中使用axios实现跨域请求需求分析:在项目中需要抓取qq音乐的歌曲列表的数据,由于要请求数据的地址url=https://c.y.qq.com/splcloud/fcgi-bin/fcg_get_diss_by_tag.fcg。从qq音乐的官网上可以看到该请求的请求头中的referer中的域名是y.qq.com(发送请求页面的域名),而host的域名是c.y.qq.com(被请求页面的域...
2018-05-16 21:25:11 22517 2
原创 在vue中实现localStorage
在vue中实现localStorage的思路:对window.localStorage[key]对象进行封装,这样就可以实现模块化的思想(实现window.sessionStorage的思想一样)如图1是在文件store.js中对localStorage的封装:完整的代码如下://保存数据export function saveToLocal(id, key, value) {...
2018-05-08 12:45:02 10379 1
原创 在vue中给对象扩展属性的方法
在vue中给对象扩展属性的方法。如下图所示给seller对象扩展一个属性id,利用立即执行函数给id赋值 图1然后将从后台返回来的数据赋值给seller对象,如下图所示: ...
2018-05-08 10:30:46 7778
原创 vue在浏览器端报错:Module not found: Error: Can't resolve 'common/js/util' in 'E:\vue-exercise\sell\src'
在用vue开发的时候,在浏览器端报错:Module not found: Error: Can't resolve 'common/js/util' in 'E:\vue-exercise\sell\src'报错的原因是util.js模块没有找到,在App.vue中引入的路径如下所示:在vue中引入的路径是错的,如果是当前目录下,则应该写成'./common/js/util'import { ur...
2018-05-08 09:57:39 20337
原创 vue中使用better-scroll实现横向滚动不生效
vue中实现横向滚动不生效,如下图红圈中所示:红圈中的html在seller.vue中的<template>内容如下<div class="pics"> <h1 class="title">商家实景</h1> <!--因为图片要横向滚动,那么父级就要设定一个固定宽度--> &
2018-05-07 19:03:44 6851 1
原创 在写移动端页面的布局的时候是按照iphone6的尺寸写的,在iphone5中因为宽度的问题导致样式错乱
在写移动端页面的布局的时候是按照iphone6的尺寸写的,在iphone5中因为宽度的问题导致样式错乱。如下所示是ratings.vue中的<template>内容<template> <!--评价页的高度可能会超过页面,所以需要bette-scroll--> <!--在内容真正开始的地方,其外部会有一个div包裹--> <div ...
2018-05-07 10:13:26 2151 1
转载 vue中filters选项的用法
vue中filters选项的用法filters是.vue文件中export对象中的一个选项,其类型是Object,即包含Vue实例可用过滤器的哈希表。下面讲讲filters选项的用法1、html如下<div id="app"> {{message | filters2| filters3(true,priceCount)}}</div>2、js如下var app = ...
2018-05-06 22:03:38 6103
在线剪切图片:cropbx.js插件的源代码
2017-11-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人