- 博客(102)
- 收藏
- 关注
原创 ant design 监听Table 组件 滚动到底部
import React, { useRef, forwardRef, useState, useEffect } from 'react'import { useMount, useMouse, useDebounceFn } from 'ahooks';import { Table, Tag, Space } from 'antd';function test() { const dataSource = [ { key: '1', name: '胡彦斌',
2022-01-12 20:49:17 3199
原创 前端导出word实现方法
前端导出word方法npm i docxtemplater jszip-utils file-saver jszip@2.6.1import Docxtemplater from 'docxtemplater'import JSZipUtils from 'jszip-utils'import { saveAs } from 'file-saver'import JSZip from 'jszip'wordData: any = { data: [ {
2021-05-20 15:06:17 1772
原创 React 动态控制伪元素样式
React 动态控制伪类样式方法1React 传入变量 ‘–color’export default function ToolTip(props) { let { color } = props return <div style={{'--color': color}}> <span></span> </div>}css 使用var(–xx) 读取变量.tooltiptext::after { content:
2021-04-01 13:55:23 6482 3
原创 d3 实现24小时时序图
d3 画圆点 实现24小时时序图并增加异常节点的提示功能效果图<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> body { text-align: center; } #svg_tooltip { position: absolute;
2020-09-29 10:07:33 753
原创 前端精简TTF
精简ttf 压缩ttf一个字体好几兆,对前端来说可能不友好。1.使用fontmin字体子集化软件,生成只有那几个字的官网:http://ecomfe.github.io/fontmin/2.在线工具https://www.fontke.com/tool/subfont
2020-09-23 16:57:26 362
原创 echarts 散点图 icon的自定义
echarts 散点图 icon的自定义1.对默认红色圆点的修改设置symbol属性,可以生成不同的图形。echarts默认提供了’circle’, ‘rect’, ‘roundRect’, ‘triangle’, ‘diamond’, ‘pin’, 'arrow’这么几种散点。symbol可以是image的地址,也可以是svg的一段path。支持回调函数写法2.给不同icon上不同颜色symbol的各种颜色 还是得通过itemStyle来控制。3.不同icon不同的旋转角度symbol的角
2020-06-17 10:29:37 6377
原创 vue keep-alive
keep-alivekeep-alive是Vue内置的一个组件,可以使被包含的组件保持状态,避免重新渲染。可以使不活动的组件保存到缓存中,而不销毁它,不会触发beforeDestroy()和destroyed()。能让不活动的组件“活着”。重点1.可以使被包含的组件保持状态,避免重新渲染。2.组件不被销毁,不会触发beforeDestroy()和destroyed()3.使用keep-...
2020-04-27 08:05:45 368
原创 AWS IoT分享
物联网可以做什么?工业监控 远程医疗 智能家居 车联网 环境监控 智慧农业 可穿戴设备智慧交通(etc) 等等https://www.bilibili.com/video/av44907222?from=search&seid=73325454312331948171分50秒 阿尔兹海默症 物联网 + 养老 + 健康AWS IoT 物联网介绍https://...
2019-12-21 11:40:43 355
原创 php 浮点数相加精度问题及解决办法
var_dump(0.1+0.7 == 0.8); // bool(false)var_dump(0.01+0.2 == 0.21); // bool(false)bcadd()...$money = $data['money']; // $money 为前端传的总金额$applyList = [ ['money' => 0.2], ['money' ...
2019-12-09 17:52:02 1180
原创 laravel 使用原生sql语句
使用DB::select() 里面放所有原生sql语句$user = DB::select(' SELECT CODE AS source, cash AS fee, id AS order_id, title, pay_time FROM icws_ima...
2019-12-06 18:31:22 1656
原创 mysql 使用JSON_EXTRACT() 取json值
mysql 取json字符串字段下的某个键的值要求:mysql版本5.7及以上SELECT JSON_EXTRACT('{"uid":"asas02234"}', "$.uid");由于json的键值是带双引号。所以需要去掉双引号。使用replace()做替换select replace(JSON_EXTRACT(infoJson,'$.uid'),'"','') uidf...
2019-12-06 10:48:51 34432
原创 Redux 异步操作中间件 Redux-thunk
Redux 异步操作中间件 Redux-thunkRedux同步修改状态数据时,Redux要求store.dispatch() 传递过来的action是个普通的js对象,这个对象用于描述对数据的操作但是到了异步的时候,我们需要使用Redux的中间件Redux-thunk,当然中间件有很多。Redux-thunk只是其中的一个。1.安装Redux-thunknpm install --sa...
2019-08-22 10:16:41 339
原创 Vue React 各种大乱炖 对比
/VueReact单文件直接引入vue.jsreact.js + react-dom.js + babel.js虚拟DOM√√虚拟DOM区域(挂载区域)el 参数值ReactDOM.render() 第二个参数值数据驱动√√Model数据源初始化,定义在data:{} 或 data () { return {} }里在state里 ...
2019-08-13 21:26:01 650
原创 php 抽象类是个啥
抽象类:一个类中至少有一个方法是抽象的,我们称之为抽象类。要求:1.一个类中至少有一个抽象方法2.抽象方法不允许有{}3.抽象方法前面必须加abstract类前面加abstract<?php abstract class Human { public abstract function getInfo () { echo '我...
2019-03-20 19:56:50 611
原创 jQuery 解决 动态创建的元素添加不了事件 问题
如下面的例子,使用add方法创建的button标签是添加不了click事件的&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;p class="pWrap"&gt;这是一个段落。 &lt;button class=&am
2019-02-27 23:15:09 468
原创 js 实现 input密码框 密码的显示和隐藏功能
鼠标按下时,密码铭文的显示,鼠标抬起时,密码铭文不显示上代码blade模板&amp;amp;amp;lt;input type=&amp;amp;quot;password&amp;amp;quot; value=&amp;amp;quot;{{ old('password') }}&amp;amp;quot; &amp;amp;amp;gt;&amp;amp;amp;lt;i o
2019-02-25 09:54:21 3313
原创 laravel withInput() 和old()
传统提交表单 页面会刷新,输入框里的内容会丢失掉。更好的用户体验 解决办法withInput() + old()laravel 会自动把用户输入的数据存到一次性的session里。使用old()可以将上次提交的数据从一次性session里取出来,挂在DOM元素上,从而避免用户重新输入。使用withInput(),配合with方法,可以将想要返回的参数写入session中。blade模板便可...
2019-01-22 11:17:01 3876
原创 laravel 实现最最简单的一个分页接口
分页技术是一种将所有数据分段展示给用户的技术.用户每次看到的不是全部数据,而是其中的一部分,如果在其中没有找到自习自己想要的内容,用户可以通过制定页码或是翻页的方式转换可见内容,直到找到自己想要的内容为止。前10条记录:select * from table limit 0,10第11至20条记录:select * from table limit 10,10第21至30条记录:...
2018-12-26 16:19:44 4755
原创 resetful api
面向资源去设计API每一个资源都有唯一的资源标识,对资源的操作不会改变这些资源。对资源的4种操作类型正好对应数据库的4种操作(增删改查)特点总结:面向资源的接口设计抽象操作为基础的CRUDC createR read 读U update 更新D deleteGET /articles这个命令,GET是动词,/articles是宾语。宾语必须是名词...
2018-12-25 10:10:24 1064
原创 解决 echarts X轴显示不全 问题
明明选择的2019-02-28 作为结束时间,但是x轴上展示的却不是结束时间解决办法xAxis: { axisLabel:{ showMaxLabel: true }},
2018-12-11 09:48:04 7480
原创 使用blob来做上传图片预览
<!DOCTYPE html><html><head> <title></title></head><body><script type="text/javascript" src="jquery-1.11.3.min.js">&
2018-11-28 16:34:30 2536 1
原创 laravel Excel导出
安装 maatwebsite/excelblade模板<p> <button onclick="scoreExcel()">导出列表</button></p><table border="1" cellspacing="0"> <tr> &
2018-11-21 16:21:44 280
原创 laravel 多条件查询
sql拼接blade.php<form action="" method="post">{{csrf_field()}}提现查询<select name="type" > <option value ="微信">微信</option> <option value ="支付宝&
2018-11-20 16:35:57 2615
原创 事务的基本概念
事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。3条语句begin transaction; // 事务开始commit; // 提交,提交事务的所有操作rollback; rollback 回滚,即在事务运行的过程中发生了某些故障,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。这里...
2018-11-08 10:16:59 832
原创 查询构造器 小坑
$re = DB::table('users') -> first();注意,这里取到的是对象而使用get() 查到的是个数组。 $re = DB::table('users') -> get();容易弄错,小坑,记录一下
2018-10-31 23:34:15 181
原创 微信授权 获取用户信息
1.使用appid获取微信回调地址上的code参数2.用code参数值去获取access_token3.使用拿到 access_token 和openid 获取用户信息其实最好的教程就是API官方文档https://mp.weixin.qq.com/wiki?t=resource/res_main&amp;id=mp1421140842...
2018-10-31 23:20:46 258
原创 mysql 中的触发器
有点像js的事件。可以监视某张表的操作,并触发相关操作事先为某张表绑定一段代码,当表中的某些内容发生改变的时候(增删改),系统会自动触发代码,执行。例子: 有两张表,一张订单表,一张商品表,每生成一个订单,意味着商品的库存要减少。触发器触发器:事件类型、触发事件、触发对象事件类型:增删改触发时间: 前后before after注: 只有表才支持触发器,视图不支持。每个表每个事件只允...
2018-10-22 13:54:27 190
原创 理解php中的依赖注入
<?phpclass Test1 { function say() { echo 'hello <br>'; }}class Test2 { function connect() { $test1 = new Test1(); $test1 -> say(); echo 'c...
2018-10-20 10:59:10 246
原创 laravel 查询构造器 (二)
get() //从数据表中取得所有的数据列first() //取一条数据列where() //写条件select() // 查询部分字段chunk() // 分块查询pluck() // 取某字段值lists() // 取某字段值,且可以自定义键值get()得到一个数组$re = DB::table('user_ali') -> get();dd($...
2018-10-17 09:07:46 484
原创 laravel 查询构造器 (一)
DB::table() 查询构造器演示插入 insert()insert 里面写数组。返回一个布尔值。DB::table('user_ali') -> insert(['ali_user' => 'lisi']);插入操作并返回主键自增idinsertGetId$id = DB::table('user_ali') -> insertGetId(['ali_...
2018-10-17 08:59:43 384
原创 laravel post请求 升级版
1.向ajaxTest模板页面传数据将Test表中的数据传递给ajaxTest模板class User extends Controller{ public function ajaxShow () { $data = Test::all(); return view('ajaxTest',compact('data')); }}2.控制...
2018-10-05 17:54:54 876
原创 使用laravel写一个最简单的post请求
在laravel中写一个请求需要用到jquery文件。下面以POST请求为例1.配置路由post请求,进入indexCo控制器下面的change方法。Route::post('change', 'indexCo@change');2.页面模板 ajaxTest.blade.phpbutton元素上,绑定点击事件,点击后发起一个POST请求。注意:请求必须要带上csrf的这个参数...
2018-10-05 14:41:15 7587
原创 laravel ORM
每一个数据表都对应着一个模型ORM常用操作通过模型来更新数据,再想想之前学习的Mongoose,Mongoose其实就是一种orm,用操作模型的方法去操作数据库。User :: all(); //获取user表所有数据User :: find(5); // 找到user表中主键是5的数据// 新增数据 create 里面必须传入一个数组,model必须设置允许注入的字段。Use...
2018-09-28 17:52:16 924
原创 使用laravel 实现分页效果 超简单
每页展示5条数据控制器class indexCo extends Controller{ public function cc () { $lists = UserAli:: orderBy('user_id','desc') -> paginate(5); return view('cc',compact('lists')); }}...
2018-09-25 15:23:20 9960
原创 laravel中的路由
路由5.2 路由位置 app/http/routes.php5.4 已经在根目录下 routesRoute类,使用静态方法1.回调函数写法第二个参数,回调函数,表示这个路由做的实际操作。Route::get('/', function () { return view('welcome');});2.写控制器和方法注意:这里第二个参数也是个字符串Route::get(...
2018-09-22 10:10:20 190
原创 接口获取到的数据也需是多语言
多语言需求,调用接口获取到的数据也需是多语言。比如最开始“所在地”这个字段city,为了做多语言,得添加一个字段city_en数据库中,有city 深圳 city_en shenzhen前端在axios全局设置里面,加header头。key为lang,value值是cn/en,这个取自sessionStorageaxios.defaults.headers.commo...
2018-09-13 15:24:39 1144
原创 前端判断用户活跃情况,长时间不活跃自动退出登录
需求:判断用户活跃情况,超过30分钟不活跃直接退出登录。本想一开始记录下最后一次请求的时间,用最后一次请求的时间去判断用户的活跃程度。这样也有点局限。网上搜了一下,说用鼠标移动状态来检测是否在操作页面。不能说完全不好,但也算是一种方法。于是…// 检测用户活跃情况function isActive() { var arr = ['index', 'login'] va...
2018-09-05 19:06:53 8095
原创 使用gulp打包增加hash值,解决浏览器缓存问题
前端项目部署后,用户必须强刷浏览器后才能看到最新的代码(和效果),这种体验不是很好,而有的用户根本不知道强刷浏览器这么一回事。其实最好的办法就是给js和css增加一个版本号,或者说是一个hash值,看了下使用vue-cli搭建的项目,最后打完包后,都会生成一个随机的hash值。其实就是为了避免缓存。这里使用gulp 的gulp-rev插件就可以给打包的js或者css增加一个hash值,注意...
2018-08-26 21:24:24 4139
原创 彻底解决js计算精度问题math.js
在js运算过程中,总会出现精度问题。 终极解决办法,引入math.js 数学库&lt;!doctype html&gt;&lt;html&gt;&lt;head&gt; &lt;meta charset="utf-8"&gt; &lt;script src="https://cdnjs.
2018-08-16 15:34:33 10573
原创 自主研发成笑谈 国产红芯浏览器被曝使用谷歌内核
安装文件夹下chrome的图标都没删除 红芯浏览器宣称兼容xp,貌似Chrome49就是最后一个兼容xp的版本,所有才用这个版本。 换壳Chrome的红芯浏览器竟然融了C轮2.5亿,还曾拿数百万政府和国企订单,真是打脸。...
2018-08-16 11:47:24 731
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人