React-umi路由
1.约定式路由即文件路由,根据文件名自动配置;
1.1 基础路由即自动生成的路由配置
例如pages目录如下:
12345678910// 基础路由pages user index.js index.js umi会自动生成路由: [ {path: '/', component: './pages/index.js'}, {path:'/user/', component: './pages/user/index.js'} ]
1.2 动态路由即带有$前缀的目录或文件生成的路由配置
例如pages如下:
1234567891011pages $user index.js $id.js index.js umi生成路由: [ {path: '/', component: './pages/index.js'} {path:'/:user/ ...
nest.js学习笔记
简介 Nest 是一个用于构高效,可扩展的 Node.js 服务端应用程序的框架…… 它使用渐进式 JavaScript,内置并完全支持 TypeScript特点:基于 Node:对前端友好服务端应用框架:主要用于服务端接口开发高效,可扩展:体现在 Nest 各个功能模块之间的架构是解耦的、容易进行组合的渐进式:不需要一开始掌握它的全部功能特性,后续可根据业务需要逐步叠加功能。Nest 由 TS 开发,完全支持 TS应用场景:首先是最基础的,做服务端开发;其次,支持服务端扩展,比如:安全、鉴权、队列、日志等
技术架构的支持:微服务,序列化等
安装与使用123npm i @nestjs/clinest new projectnpm run start
目录结构src如下:
入口文件为main.ts
创建module:1nest g module user server
在目录不存在时生成src/server/user目录,并在user目录下添加user.module.ts文件,同时会在跟模块app.module.ts下自动引入UserModule
创建con ...
Vue总结
Vue总结1.组件生命周期1.1 单组件生命周期 单组件的生命周期为beforeCreate–created–beforeMount–mounted;
1.2 父子组件生命周期 父子组件的生命周期为beforeCreate–created–beforeMount–(Child)beforeCreate–(Child)created–(Child)beforeMount–(Child)mounted–mounted;
父组件在创建完成后,挂在完成之前开始进行子组件的创建和挂载;
1.3 缓存组件生命周期 若组件为缓存组件(外层包有keep-alive),则会有activated生命周期;此时生命周期执行顺序为:
……(同父子组件)–(Child)activated–activated;
当销毁组件时,会执行 : beforeDestroy – (Child)beforeDestroy–(Child)destroyed–destroyed;
当两个缓存组件相互切换时,会优先执行当前组件的deactivated,然后执行被挂载组件的activated;
1.4 捕获错误生 ...
一些小总结
1.虚拟DOM什么是虚拟dom :
vdom可以看作是一个使用javascript模拟了DOM结构的树形结构
123456789101112131415161718192021222324252627虚拟DOM是什么: 一个较轻的普通JS对象 ==> 真实DOM是一个较重的对象 => 轻重看对象内部属性多少 虚拟DOM对象有时也称为虚拟节点对象(vNode), 它包含了用于生成一个真实DOM/Node的必要信息, 比如: <ul id="list"> <li key="1">abc1</li> <li key="2">abc2</li> </ul> { tagName: 'ul', props: { id: 'list', }, children: [ ...
Nuxt.js学习笔记
1.SSR服务端渲染vue-server-renderer,即服务器端对Vue页面进行渲染生成html文件,然后将html页面传递给浏览器,优点:SEO不同域SPA的html只有一个无实际内容的html和app.js,SSR生成的html是有内容的,可以让搜索引擎能索引到页面内容;更快内容到达时间 传统的SPA引用是将bundle.js从服务器获取,然后在客户端解析并挂载到dom。而SSR直接将HTML字符串传递给浏览器。大大加快了首屏加载时间。
1)服务端渲染优缺点:优点:前端耗时少、有利于SEO、无需占用客户端资源、后端生成静态文件缺点:不利于前后端分离、占用服务器资源适用于应用交互不太复杂需要良好的SEO且服务器性能好2)客户端渲染优缺点:优点:有利于前后端分离、服务器压力小缺点:前端响应慢、不利于SEO适用于应用交互复杂且不需要良好的SEO,例如企业内部系统
1.2 预渲染预渲染可以打包多页面并解决每个页面单独生成title描述关键词,切接口数据是在html生成之前放在页面上的,所以爬虫可以抓取到内容;预渲染适合一个项目中有几个页面需要做seo优化时使用;预渲染可以通过插件pr ...
webSocket
为什么需要websocket因为http协议存在一个缺陷:通信只能由客户端发起优势:一旦连接建立,后续数据都会以帧序列的形式传输,断开服务前,不需要服务端或者客户端重新发起请求,极大的节省了网络带宽资源的消耗,性能更高,实时性强;(1)建立在 TCP 协议之上,服务器端的实现比较容易。(2)与 HTTP 协议有着良好的兼容性。默认端口也是80和443,并且握手阶段采用 HTTP 协议,因此握手时不容易屏蔽,能通过各种 HTTP 代理服务器。(3)数据格式比较轻量,性能开销小,通信高效。(4)可以发送文本,也可以发送二进制数据。(5)没有同源限制,客户端可以与任意服务器通信。(6)协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。缺点:不兼容低版本浏览器
基本使用浏览器提供了原生类websocket,是通过new来创建的;websocket = new WebSocket(url, protocols)接收两个参数:url 表示需要连接的地址,比如:ws://localhost:8080;protocols 可选参数,可以是一个字符串或者一个 ...
一些小方法
时间戳转换为日期timestampToTime(timestamp) { var date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 let Y = date.getFullYear() + ‘-‘; let M = (date.getMonth()+1 < 10 ? ‘0’+(date.getMonth()+1) : date.getMonth()+1) + ‘-‘; let D = (date.getDate() < 10 ? ‘0’+date.getDate(): date.getDate()) + ‘ ‘; let h = (date.getHours() < 10 ? ‘0’+date.getHours(): date.getHours()) + ‘:’; let m = (date.getMinutes() < 10 ? ‘0’+date.getMinutes(): date.getMinut ...