table宽度设置不生效
先看下面,是一个宽度为600的表格代码1234567891011121314151617181920212223242526272829<html> <style> table { width: 600px; } tr td:nth-of-type(odd) { background: #ccc; } </style> <body> <table border cellpadding="0" cellspacing="0"> <tbody> <tr> <td>标题</td> <td>这是标题</td> <td>副标题</td> <td>这是副标题</td> ...
mac无法删除xxxxx,因为其路径名称太长
最近废纸篓里面有个嵌了几百层的文件夹。然后发现怎么删也删不掉。 电脑提示“无法删除css,因为其路径名称太长。” 我试了下用马化腾的“lemon”,也清理不了。 谷歌出来的都是要在废纸篓敲命令行,我感觉不太靠谱。毕竟我访问/.Trash,执行ls提示ls: .: Operation not permitted 于是我试了下拖出来能不能处理掉。 将删不掉的文件夹从废纸篓内拖出来 在当前位置打开你的终端 rm -rf ./xxxxx 无敌! 注:但是rm -rf正常情况不要乱用
echarts关系图默认高亮某一个关系
前言最近搞项目有个需求,就是将echarts当中的关系图中的某个节点及其关联节点高亮。 先看下运行前的样子。 当浏览器传入某个节点的时候,需要将这个节点及其相邻关联节点高亮起来。例如,我需要将上面的Labarre节点及其相邻节点高亮起来。 查看echarts文档发现dispatchAction可以触发图表的行为。于是乎添加以下代码: 1234myChart.dispatchAction({ type: "highlight", dataIndex: 10}); 效果如下: 完美符合预期效果。这里的dataIndex是数据的下标。在实际开发过程中根据自己需要去设置就好。 友情链接 完整代码echarts文档
前端程序猿修改Referer
前言公司有个项目,后端限制了请求域名。请求头中Referer必须是abc.com(这里是举例)开头才能请求,不然不会返回数据 吐槽由于后台的这个referer限制。导致本地开发,无法拿到数据。百度过了、谷歌过了、bing也搜过了。看了一堆的解决方法,都不好用。找后台处理,让他去掉这个限制。他说不能去掉。。。我能怎么办,我也很无奈。 解决方案于是去问下前端经理。他给我个方案试试,修改本地host,让那个referer的域名指向本地,去试试看。我试了下好使。 贴下我修改后的host: 1127.0.0.1 abc.com 假如项目端口是8080端口的。那么访问abc.com:8080发现可以正常访问到项目,并且后端接口也能返回数据的。 后记不懂就要问! 安利个一键切换host的软件。好用的切换host软件 友情链接 win怎么修改host
企业微信sdk安卓生效,IOS不生效
前言最近搞了个 h5 需要调用企业微信的 jssdk继上一遍处理调用企微文章之后发现了个新的坑 初始化sdk正常代码12<script src="//res.wx.qq.com/open/js/jweixin-1.2.0.js"></script><script src="//open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js"></script> 12345678910111213141516const config = { beta: true, // 必须这么写,否则wx.invoke调用形式的jsapi会有问题 debug: true, // 开启调试模式 appId: appId, // 必填,企业微信的corpID timestamp: timestamp, // 必填,生成签名的时间戳 nonceStr: nonceStr, // 必填,生成签名的随机串 signature: signature,...
hexo升级
2020过去了,博客也建了几年了。hero也出到5.3.0,而我也的还是3.8.0 -.- ,是时候改升级下hexo了。 全局升级hexo(mac全局安装,需在命令前添加sudo) 1npm i hexo-cli -g 安装npm-check(mac全局安装,需在命令前添加sudo) 1npm i npm-check...
解决uniapp调用企业微信jssdk不生效问题
前言最近搞了个 h5 需要调用企业微信的 jssdk结果却怎么也调用不起来 -.- 代码结构我的 uniapp 代码是利用uniapp官方的colorui模版结构。 1234567891011121314├── App.vue├── Readme.md├── api├── colorui├── components├── main.js├── manifest.json├── pages├── pages.json├── static├── unpackage├── pluign│ └── wxsdk.js└── utils 挖坑过程描述我看企微 sdk 里面官方的例子是用的script标签去进行 sdk 的引入。没有提供amd等方式引入的例子。于是把文档保存在plugin文件夹下,用import的形式进行引入。 123456789101112131415161718192021222324<script> import wx from "@/plugin/wxsdk.js"; import { getJsSdk...
bind,call,apply的区别
这是一道经典的面试题了。然鹅我一直都不知道他们三者区别。。。所以今天学习下。 首先,他们三者都是改变this指向的。在react当中,常常看到以下场景: 12345678910111213141516171819202122handleFn(id = 0) { console.log(id)}handleClick(id) { // do something... this.handleFn(id)}render() { const list = [ {id: 1, name: '1'}, {id: 2, name: '2'} ] return ( <ul> { list.map(item => <li key={item.id} onClick={this.handleClick.bind(this,...
es6的超好用的写法
链判断运算符:?.在api对接的时候,会出现一种情况后台某个字段某返回给你,然后你不得不做非空判断。 123456ajax({ url: 'xxx' success(res) { let children = res.data.children // Uncaught TypeError: Cannot read property 'data' of undefined }}) 正常加判断的方法 1let children = res && res.data && res.data && res.data.children 是不是又丑又长,看看es6的写法 1let children = res?.data?.children 短了一大截,代码优雅多了 解构赋值在React的render需要state里面的几个参数。 123456789101112131415this.state = { name:...
async/await学习
async用法1234async fn() {}const fn = async () => {}const fn = async function() {}let obj = { async fn() {} }