;

1.安装 $ npm install express –save 2.index.js const express = require(‘express’) const app = express() app.get(‘/’, (req, res) => res.send(‘Hello World!’)) app.listen(3000, () => console.log(‘Example app listening on port 3000!’)) 3.Express 应用程序生成器 官网教程执行npm install express-generator -g 控制台会提示The program ‘express’ is currently not installed. You can install it by typing: apt-get install node-express 改用命令 apt-get install node-express express –version //查看版本 express –view==pug myapp //app目录下生成一个项目目录 cd myapp //进入目录 npm i //安装依赖 node app //运行项目 浏览器输入 host:3000,报错`!!!` i…

express入门 2019年11月29日
;

1.安装 npm install –save sequelize npm install –save mysql2 2.Sequelize 中 Model 的数据类型对应MySQL中的数据类型 Sequelize.STRING // VARCHAR(255) 类型:字符串 最大值: 65535个字符 Sequelize.STRING(1234) // VARCHAR(1234) 类型:变长 最大值: 65535个字符 Sequelize.TEXT // TEXT 类型:字符串 最大值:65535个字符 Sequelize.TEXT(‘tiny’) // TINYTEXT 类型:字符串 最大值:255个字符 Sequelize.INTEGER // INTEGER 类型:整型 最大值:范围(-2147483648~2147483647) Sequelize.BIGINT // BIGINT 类型:整型 最大值:范围(+-9.22*10的18次方) Sequelize.BIGINT(11) // BIGINT(11) 类型:整型 最大值:范围(+-9.22*10的18次方) Sequelize.FLOAT // FLOAT 类型:单精度浮点型 8位精度(4字节) Sequelize.FLOAT(11) // FLOAT(11) 类型:单精度浮…

Sequelize教程 2019年11月29日
;

第一步,将此单元格设置为“自动换行” 第二步,在代码中需要换行的位置输入 “\n”

通过代码生成的excel文件中内容如何换行? 2019年11月28日
;

系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 – (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验内存使用 cat /proc/swaps 显示哪些swap被使用 cat /proc/version 显示内核的版本 cat /proc/net/dev 显示网络适配器及统计 cat /proc/mounts 显示已加载的文件系统 lspci -tv 罗列 PCI 设备 lsusb -tv 显示 USB 设备 date 显示系统日期 cal 2007 显示2007年的日历表 date 041217002007.00 设置日期和时间 – 月日时分年.秒 clock -w 将时间修改保存到 BIOS 关机 (系统的关机、重启以及登出 ) shutdown -h now 关闭系统(1) init 0 关闭系统(2) telinit 0…

Linux常用命令大全 2019年11月25日
;

1、把文件解压到当前目录下 unzip test.zip 2、如果要把文件解压到指定的目录下,需要用到-d参数。 unzip -d /temp test.zip 3、解压的时候,有时候不想覆盖已经存在的文件,那么可以加上-n参数 unzip -n test.zip unzip -n -d /temp test.zip 4、只看一下zip压缩包中包含哪些文件,不进行解压缩 unzip -l test.zip 5、查看显示的文件列表还包含压缩比率 unzip -v test.zip 6、检查zip文件是否损坏 unzip -t test.zip 7、将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件 unzip -o test.zip -d /tmp/

解压unzip用法 2019年11月25日
;

this.$message.closeAll()

element关闭message 2019年11月24日
;

1.问题描述 默认情况,v-html中的class并不生效 2.原因 scoped属性导致css仅对当前组件生效(用css3的属性选择器+生成的随机属性实现的),而html绑定渲染出的内容可以理解为是子组件的内容,子组件不会被加上对应的属性,所以不会应用css.解决的话把scoped属性去掉就行了 2.解决方案 类名前添加>>> 参考链接:https://blog.csdn.net/weixin_42412046/article/details/80804285

vue中v-html使用样式 2019年11月22日
;

if(req.headers.origin == config.allowOrigin.int || req.headers.origin == config.allowOrigin.ext){ res.header("Access-Control-Allow-Origin", req.headers.origin); res.header("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Requested-With"); res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS"); res.header("Access-Control-Allow-Credentials", true); //可以带cookies res.header("Content-Type", "application/json; charset=utf-8") res.header("X-Powered-By", ‘3.2….

Access-Control-Allow-Origin设置多个域名 2019年11月17日
;

一.路由懒加载 path:’index’, component:resolve=>require(@/abc,resolve) 二.引入外部CDN 1.src/main.js 各种import部分不变,css部分可以注释掉 2.build/webpack.base.conf.js output同级添加externals output:{}, externals:{ ‘vue’:’Vue’, ‘element-ui’:’ELEMENT’, ‘moment’:’moment’, ‘validator’:’validator’ } 注意事项: 1).cdn 版本的 element-ui 设置的全局变量是 ELEMENT 2).如果单独引入Element会报错,因为Element依赖Vue,vue.js需要在element-ui之前引入,所以vue.js也要改为cnd的引入方式 3.index.html <body> <div id="app"></div> <script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script> <script src="http…

vue打包后文件体积及加载速优化 2019年11月17日
;

config文件夹下放置不同环境的配置文件 export NODE_ENV=’default’

node切换环境变量 2019年11月16日
;

1.https://blockflats.com/ 2.https://github.com/greatghoul/remote-working 3.https://www.clouderwork.com/?from=wap

远程办公 2019年11月10日
;

1.子元素中checkbox绑定的v-model属性如果在初始化时候没有值,会导致后面值无法选中,所以如果checkbox绑定的值为后期添加,就需要在list渲染之前进行添加

element checkbox 全选功能失效 2019年11月9日
;
ngnix命令 2019年11月8日
;

1.问题描述 chrome和edge都正常,ie11中打开一片空白,控制台报错 2.处理步骤 安装babel-polyfill问题依旧 所有的函数写法fn(){}改为fn:function(){}问题依旧 main.js中挨个注释所有的第三方组件发现是一个库导致

vue2项目在ie11中显示空白 2019年11月8日
;

<el-date-picker v-model="due_date" type="date" size="small" value-format="yyyy-MM-dd" :picker-options="pickerOptions0" placeholder="pick date"> </el-date-picker> 1.今日以后 pickerOptions0: { disabledDate(time) { return time.getTime() < Date.now() – 8.64e7 } } 2.前一个月 pickerOptions0: { disabledDate(time) { const lastMonthTime = new Date().setMonth(new Date().getMonth() – 1) return time.getTime() > Date.now() || time < lastMonthTime } } 3.后一个月 pickerOptions0: { disabledDate(time) { const lastMonthTime…

element时间选择,今日以后,今日前后一个月 2019年11月6日
;

Compliance testing

服从性测试 2019年11月6日
;

1. Doctype   目前,兼容性最好的Doctype是XHTML 1.0 Strict,事实上Gmail和Hotmail会删掉你的Doctype,换上这个Doctype。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">  <head>   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />   <title>HTML Email编写指南</title>   <meta name="viewport" content="width=device-width, initial-scale=1.0"/>  </head> </html&gt…

html email 2019年11月5日
;

1.安装 npm install pm2 -g 后续执行pm2始终提示’command not found’ 执行whereis pm2查看安装位置,发现有多处软链接,逐个删除 sudo rm -rf /usr/bin/pm2 sudo rm -rf /usr/local/bin/pm2 为确保环境干净,同时删除pm2 npm uninstall pm2 -g 再次执行npm install pm2 -g 然后再执行whereis pm2无任何信息输出 whereis node发现node位置为 同时发现pm2被安装在了/usr/local/bin下并且文件夹名字很奇怪` 类似这样符号加空格,猜测此为安装过程中的临时文件 图片中红框中为pm2的安装路径,文件夹名称为何如此奇怪 无奈之下放弃使用全局安装,直接在/usr/local/bin下执行npm install pm2 接下来设置软链接ln -s /usr/local/bin/node_modules/pm2/bin/pm2 /usr/local/bin 参考链接: https://segmentfault.com/q/1010000014016820 https://blog.csdn.net/d597180714/article/details/82619735…

pm2进程管理 2019年11月5日
;

1. function sleep(duration) { return new Promise(function(resolve, reject) { console.log("b"); setTimeout(resolve,duration); }) } console.log("a"); var s = sleep(2000); setTimeout(function(){console.log("wait")},2000); s.then(()=>console.log("c")); 来源:https://blog.csdn.net/nana_9457/article/details/88224472 2. (function test(){ setTimeout(function(){ console.log(4); },0) new Promise(function(resolve){ console.log(1); for(var i=0;i<1000;i++){ i==999&&resolve(); } console.log(2) }).then(function(){ console.log(5) }); conso…

promise与setTimeout的执行顺序 2019年10月28日
;

如果在一段体验的高峰和结尾,体验是愉悦的,那么对整个体验的感受就是愉悦的。这一规律的发现,为经济研究、企业管理、政府决策打开一扇窗户,形成极具震撼力与影响力的服务模式。

峰终定律 2019年10月25日
;

一.什么是对象序列化?   对象序列化是指将对象的状态转换为字符串(来自我这菜鸟的理解,好像有些书上也是这么说的,浅显易懂!);   序列化(Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程(来自“百度百科—序列化“,学术性强,略显高端); 二.为什么会有对象序列化?   世间万物,都有其存在的原因。为什么会有对象序列化呢?因为程序猿们需要它。既然是对象序列化,那我们就先从一个对象说起: var obj = {x:1, y:2};   当这句代码运行时,对象obj的内容会存储在一块内存中,而obj本身存储的只是这块内存的地址的映射而已。简单的说,对象obj就是我们的程序在电脑通电时在内存中维护的一种东西,如果我们程序停止了或者电脑断电了,对象obj将不复存在。那么如何把对象obj的内容保存在磁盘上呢(也就是说在没电时继续保留着)?这时就需要把对象obj序列化,也就是说把obj的内容转换成一个字符串的形式,然后再保存在磁盘上。另外,我们又怎么通过HTTP协议把对象obj的内容发送到客户端呢?没错,还是需要先把对象obj序列化,然后客户端根据接收到的字符串再反序列化(也就是将字符串还原为对象)解析出相应的对象。这也正是”百度百科—序列化“中描述的两个作用——存储、传输。 三.JavaScript中的对象序列化   J…

JavaScript之对象序列化详解 2019年10月22日
;

1.ThinkPHP Model 与 Action 用法 一直听说ThinkPHP可以使用Model调取数据库,今日才会用Model,在Action中使用D方法条用Model中函数. D(“Model名字”)->函数名. 例:D(“User”)->getList(); 调用 UserModel.php 文件中 的 function getLiser() 函数,在Model下的函数使用 $this 代表实例化当前 Model名字的表,Model下文件一般以 数据库表名+Model.php 命名

thinkphp 2019年10月21日
;

Phantom 4可以帮助很多爱好飞行的小伙伴们在出游的过程中,纪录下沿路的美景。但是对于影视制作行业中的无人机航拍运用,显然和我们手握精灵4遥控器乱飞有着很大的区别。我们就来聊一聊在影视制作中,无人机航拍有哪些拍摄技巧。 寻找前景 寻找合适的景物作为前景有几个好处 1、 烘托拍摄氛围 2、 借助前景的变化,让镜头看起来更加动感,有节奏 航拍这类镜头前,首先需要提前确定焦点,其次是合适的构图。一切准备完毕,后面主要靠飞手飞出这个画面了。 对冲镜头 如何体现速度和冲击力,“对冲镜头”是最好的选择。顾名思义,对冲,是指飞行器和运动主体同时加速,相向飞行。穿越汽车、自行车、快艇等等,这样的拍摄最大的难度在于飞手如何判断飞行器与拍摄主体的距离,以及气流的影响。 航拍这类画面,需要飞行器距离主体十分近,通常飞行器与被拍摄物体擦身而过时,只有几厘米的高度。 如何拍出速度感? 一般的多轴飞行器最高速度在45km/小时,如果我们用多轴拍摄追车,结果会很惨。一方面如果汽车加速,飞行器追不上;另一方面,如果汽车减速,又拍不出来真实感。 我们通常的做法有两种。 1、 贴地飞行 这是为了通过地面增加前景的变化速度,提升感官的速度感 2、 使用中、长焦镜头 DJI inspire 1 Pro可以支持45mm的镜头,在4/3相机系统中,它的实际焦段大约在90mm左右,可…

为什么人家的航拍好,因为懂航拍技巧啊! 2019年10月20日
;

在 JavaScript 里使用 typeof 来判断数据类型,只能区分基本类型,即 “number”,”string”,”undefined”,”boolean”,”object”,“function”,“symbol” (ES6新增)七种。 对于数组、null、对象来说,其关系错综复杂,使用 typeof 都会统一返回 “object” 字符串。 要想区别对象、数组、函数单纯使用 typeof 是不行的,JavaScript中,通过Object.prototype.toString方法,判断某个对象值属于哪种内置类型。 在介绍Object.prototype.toString方法之前,我们先把toString()方法和Object.prototype.toString.call()方法进行对比。 toString()方法和Object.prototype.toString.call()方法对比 var arr=[1,2]; //直接对一个数组调用toString() arr.toString();// "1,2" //通过call指定arr数组为Object.prototype对象中的toString方法的上下文 Object.prototype.toString.call(arr); //"[object …

js中toString与Object.prototype.toString有何不同 2019年10月11日