<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Coffee coder]]></title><description><![CDATA[学习，学以致用~Coffee in，Code out]]></description><link>https://blog.csdn.net/dont27</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; dont27]]></copyright><item><title><![CDATA[Antd 日期范围选择器控制只展示一个框]]></title><link>https://blog.csdn.net/dont27/article/details/141900652</link><guid>https://blog.csdn.net/dont27/article/details/141900652</guid><author>dont27</author><pubDate>Wed, 04 Sep 2024 18:22:15 +0800</pubDate><description><![CDATA[1. 先屏蔽第二个框：类名 `.ant-picker-panel-has-range:nth-child(2)` 来个`display:none;important放开呗（谨慎操作）利用时间范围选择器，可以让组件只展示一个框，但需要把时间那部分用样式隐藏掉，并且多了个“确定”的按钮操作，有点不合意。原来1里用的类名貌似不大合适，索性换成：`.ant-picker-panel:nth-child(2)`翻看了一下官方组件，既然可以用样式来隐藏，那是不是可以隐藏掉第二个框，全程只在第一个框操作呢？]]></description><category></category></item><item><title><![CDATA[html ID尽量别用数字开头]]></title><link>https://blog.csdn.net/dont27/article/details/139711290</link><guid>https://blog.csdn.net/dont27/article/details/139711290</guid><author>dont27</author><pubDate>Sun, 16 Jun 2024 00:29:59 +0800</pubDate><description><![CDATA[比如id为 4c9bf34 （刚好遇到代码里的富文本数据里出现了数字开头的id，又刚好在使用document.querySelector('#4c9bf34') 时获取不到dom，当然改用属性选择器`[id=xxxx]`就可以获得了。其实就是，尽量id取值尽量用字母开头，如果刚好id取值是从某些数据来的，你又不能保证这些数据是字母开头的，我们大可以统一给一个，比如'id_'这样来组装，这样能省不少麻烦。id建议尽量用字母开头，用数字或者-开头总会有一些奇怪的表现，或者使用上的不便。其实这里说的很清楚了。]]></description><category></category></item><item><title><![CDATA[svg画扇形进度动画]]></title><link>https://blog.csdn.net/dont27/article/details/138584099</link><guid>https://blog.csdn.net/dont27/article/details/138584099</guid><author>dont27</author><pubDate>Wed, 08 May 2024 20:13:42 +0800</pubDate><description><![CDATA[外层是一个容器放置内容，并且设置overflow:hidden， 内层放一个半径大于容器宽高一半的svg，并定位居中，然后svg画扇形，动态调整path来画不同程度的扇形即可。0-100，相当于0°-360°，根据数学知识，我们知道360°的弧度就是2π，因此上述公式就可以算出θ值，再用Math.cos和Math.sin就能算出三角函数值。结合上面代码，显示Move到(100,100)即圆心位置，然后画直线到(100,0)，开始画弧线， A跟着的是椭圆的两个半径，扇形两个取值一样(100,100)]]></description><category></category></item><item><title><![CDATA[js如何模拟表单输入]]></title><link>https://blog.csdn.net/dont27/article/details/138139187</link><guid>https://blog.csdn.net/dont27/article/details/138139187</guid><author>dont27</author><pubDate>Tue, 23 Apr 2024 21:47:42 +0800</pubDate><description><![CDATA[到了react时代就不同了，虽然也可以通过js拿到dom，给dom.value设置，但是react的状态绑定下，单纯给dom设置value，可是不会直接让react对于的状态也变化的。理论上，react上的事件虽然不是直接绑在dom，而是合成事件，但合成事件也是root上绑定的事件，等待冒泡上来的，new Event也设置了bubbles:true。jQuery时代，模拟表单输入很简单，本质上就是操作dom，选择对于的dom，给dom.value设置值即可。用了另外一种方式给dom设置value。]]></description><category></category></item><item><title><![CDATA[react合成事件与原生事件区别备忘]]></title><link>https://blog.csdn.net/dont27/article/details/137934519</link><guid>https://blog.csdn.net/dont27/article/details/137934519</guid><author>dont27</author><pubDate>Thu, 18 Apr 2024 20:53:30 +0800</pubDate><description><![CDATA[朋友问起在做一个下拉框组件，下拉的点击事件是用react的onClick触发，外部区域点击关闭则用dom的原生点击事件绑定，问题是下拉的点击事件无法阻止冒泡到dom的原生事件。我说，react的合成事件 和 原生事件是不一样的，尽可能不要混用，不然很绕。翻开之前在codepen写的demo也把自己绕晕了一下。react的合成事件，注入onClick等事件，是在根元素上事件代理模拟的。react 16.8.0和之前的版本，是在document上事件代理，react 17则是在root。]]></description><category></category></item><item><title><![CDATA[让css失效的方法]]></title><link>https://blog.csdn.net/dont27/article/details/137758883</link><guid>https://blog.csdn.net/dont27/article/details/137758883</guid><author>dont27</author><pubDate>Mon, 15 Apr 2024 00:21:00 +0800</pubDate><description><![CDATA[通过document.styleSheets 找到对应的样式成员，给它设置disabled属性为true即可，document.stylesSheets可以获取到页面的样式，不止是link标签的，style标签也可以。]]></description><category></category></item><item><title><![CDATA[油猴脚本-微信文章dark模式影响阅读]]></title><link>https://blog.csdn.net/dont27/article/details/137652191</link><guid>https://blog.csdn.net/dont27/article/details/137652191</guid><author>dont27</author><pubDate>Thu, 11 Apr 2024 20:48:22 +0800</pubDate><description><![CDATA[找了几篇文章不得其解，后来看了下mac系统设置，我在外观上选了自动。但这不是我想要的结果，说好的写脚本呢，系统的配置我还是保留，既然prefer-color-scheme我们搞不了，那且浅看下[data-weui-theme=dark]这个属性选择器。页面加载->给body添加data-weui-theme: light -> 把带js_darkmode__1的移除掉样式->搞定。看到了 prefer-color-scheme的媒体查询，以及 [data-weui-theme=dark] 的属性选择器。]]></description><category></category></item><item><title><![CDATA[gitconfig区分工作和个人账号]]></title><link>https://blog.csdn.net/dont27/article/details/137209708</link><guid>https://blog.csdn.net/dont27/article/details/137209708</guid><author>dont27</author><pubDate>Sun, 31 Mar 2024 21:27:20 +0800</pubDate><description><![CDATA[用git，一般会有个人账号比如github的账号，也会有工作上的gitlab等的账号。一般~/.gitconfig 会有git账号和邮箱配置，这个一般就是全局的了，可以在一些目录里运行git config user.email 查看正使用的邮箱。而且在githubs本目录下似乎git config user.email拿不到信息,或者拿到全局的(~/.gitconfig 配置的user)比如我在Documents/githubs目录放的是开源的项目，在Documents/works 目录放的是工作的项目。]]></description><category></category></item><item><title><![CDATA[npm_config_xxx]]></title><link>https://blog.csdn.net/dont27/article/details/136073153</link><guid>https://blog.csdn.net/dont27/article/details/136073153</guid><author>dont27</author><pubDate>Wed, 07 Feb 2024 20:05:35 +0800</pubDate><description><![CDATA[问题：`npm run log` 和 `yarn log` 有没有区别？首先这里读到了npm_config_foo变量，那么这个变量怎么来的呢？设置变量 foo 为123， 同时会往 .npmrc （用户主目录） 写入 foo=123 的配置信息 （永久）同时，nodejs脚本可以通过process.env.npm_config_foo读取到123还有其他设置么？有 --xxx=yyy 的形式，优先级最高yarn task 不支持 --foo=123。]]></description><category></category></item><item><title><![CDATA[antd 日期选择框增加季度预设范围]]></title><link>https://blog.csdn.net/dont27/article/details/135830927</link><guid>https://blog.csdn.net/dont27/article/details/135830927</guid><author>dont27</author><pubDate>Wed, 24 Jan 2024 20:37:44 +0800</pubDate><description><![CDATA[获取当前一季度的开始日期时间： moment().quarter(1).startOf('quarter')测试同学说想要有个季度的预设选择框，方便快速选择季度的开始和结束日期。实现方法很简单，按照官网示例用moment初始化一下即可。antd 的rangepicker是支持预设的。]]></description><category></category></item><item><title><![CDATA[img 跨域 和 缓存]]></title><link>https://blog.csdn.net/dont27/article/details/135255541</link><guid>https://blog.csdn.net/dont27/article/details/135255541</guid><author>dont27</author><pubDate>Wed, 27 Dec 2023 20:59:28 +0800</pubDate><description><![CDATA[当使用缓存时，img请求的图片没有响应头Access-Control-Allow-Origin，再次用js来fetch图片时复用了缓存请求，响应头并没有Access-Control-Allow-Origin，浏览器认为这个请求不支持跨域。当不使用缓存时，fetch图片时重新发起了请求，此时响应头返回了Access-Control-Allow-Origin，支持跨域，于是正常。一个奇怪的问题，明明图片那边配置了允许跨域，但在禁用缓存的情况，js fetch 图片都正常。图片所在域名是 b.com。]]></description><category></category></item><item><title><![CDATA[mac下使用puppeteer-core demo]]></title><link>https://blog.csdn.net/dont27/article/details/130963223</link><guid>https://blog.csdn.net/dont27/article/details/130963223</guid><author>dont27</author><pubDate>Sat, 03 Jun 2023 23:27:28 +0800</pubDate><description><![CDATA[因为本来电脑就有chrome，不想puppeteer装多一个chrome，于是只安装了puppeteer-core，那就需要在launch的时候，传入executablePath来指定chrome浏览器。因此，只要跑一次，手动登录一下，下回再跑脚本，就不需要手动登录了。当然，如果目标系统有做一些时效处理的话，可能下回再跑脚本，缓存过期还是得手动登录了。许久没用过puppeteer了，最近看了篇文章，貌似能解决puppeteer访问一些需要登录的系统时每次都要手动登录的麻烦。]]></description><category></category></item><item><title><![CDATA[树形数组结构和扁平数组结构的转换]]></title><link>https://blog.csdn.net/dont27/article/details/129540064</link><guid>https://blog.csdn.net/dont27/article/details/129540064</guid><author>dont27</author><pubDate>Tue, 14 Mar 2023 21:08:02 +0800</pubDate><description><![CDATA[关于树形数组结构和扁平数组结构之间的转换]]></description><category></category></item><item><title><![CDATA[antd datepicker 月份、周未展示中文问题]]></title><link>https://blog.csdn.net/dont27/article/details/129155442</link><guid>https://blog.csdn.net/dont27/article/details/129155442</guid><author>dont27</author><pubDate>Wed, 22 Feb 2023 09:30:23 +0800</pubDate><description><![CDATA[虽然项目有设置全局ConfigProvider的locale，但似乎从输出的locale来看（来自 antd/lib/locale/zh_CN），缺少了monthFormat和shortWeekdays两个配置项，一个是展示月份的配置，一个是展示周的配置。项目在用antd 4.18.9 时，遇到datepicker 月份和周都没正常展示中文。后面全局配置locale就不再直接用antd/lib/locale/zh_CN的了。那既然如此，不妨自己扩展一下locale，补上缺失的配置项。]]></description><category></category></item><item><title><![CDATA[算出指定日期在当年的第几周]]></title><link>https://blog.csdn.net/dont27/article/details/128292417</link><guid>https://blog.csdn.net/dont27/article/details/128292417</guid><author>dont27</author><pubDate>Mon, 12 Dec 2022 20:37:29 +0800</pubDate><description><![CDATA[js计算某天是当年的第几周]]></description><category></category></item><item><title><![CDATA[umi 创建的页面在手机上报globalThis undefined]]></title><link>https://blog.csdn.net/dont27/article/details/128258629</link><guid>https://blog.csdn.net/dont27/article/details/128258629</guid><author>dont27</author><pubDate>Fri, 09 Dec 2022 20:28:43 +0800</pubDate><description><![CDATA[umi dev后的页面，在手机上访问时，报 .umi/core/terminal.ts  globalThis.console 找不到globalThis。但是，报错的位置是.umi，实际上是在src的js之前，所以会有问题，更简单的解法是直接在.umirc上加上对globalThis的赋值。在一些手机，尤其是买了就没升过系统的iphone，比较常见的就是globalThis不存在了。是因为手机的浏览器版本较低，没有globalThis这个全局变量，直接报错。]]></description><category></category></item><item><title><![CDATA[css module global笔记]]></title><link>https://blog.csdn.net/dont27/article/details/125199787</link><guid>https://blog.csdn.net/dont27/article/details/125199787</guid><author>dont27</author><pubDate>Thu, 09 Jun 2022 11:22:49 +0800</pubDate><description><![CDATA[global]]></description><category></category></item><item><title><![CDATA[js首尾指针]]></title><link>https://blog.csdn.net/dont27/article/details/124800652</link><guid>https://blog.csdn.net/dont27/article/details/124800652</guid><author>dont27</author><pubDate>Mon, 16 May 2022 19:34:28 +0800</pubDate><description><![CDATA[将一个数组里的数字中奇数放前面，偶数放后面。

解法原理：在首尾设置指针，

1.首部指针从头到尾遍历，一遇到偶数则停下

2.尾部指针从后面往前遍历，一遇到奇数就停下

3.首指针和尾指针的元素互换

4.如果首指针和尾指针还没相遇，则继续第1步，否则结束

此时数组元素就保证奇数在前，偶数在后了。



代码如下：


// const target = Array(10).fill(0).map((_,i)=&gt;i+1);
// 造个随机正整数组成的数组
const target = Array(]]></description><category></category></item><item><title><![CDATA[用CDN方式引入echarts画热力图demo踩坑]]></title><link>https://blog.csdn.net/dont27/article/details/123561175</link><guid>https://blog.csdn.net/dont27/article/details/123561175</guid><author>dont27</author><pubDate>Thu, 17 Mar 2022 21:39:01 +0800</pubDate><description><![CDATA[会不会你刚好用cdn来画echarts 热力地图也遇到这个问题？]]></description><category></category></item><item><title><![CDATA[daily CodeWars]]></title><link>https://blog.csdn.net/dont27/article/details/38695413</link><guid>https://blog.csdn.net/dont27/article/details/38695413</guid><author>dont27</author><pubDate>Wed, 20 Aug 2014 01:20:28 +0800</pubDate><description><![CDATA[每天都在codewars做题，刷题。


记录一下。。


CodeWars

Javascript filter - 1
function searchNames(logins){
  return logins.filter(function(login){return /_$/.test(login[0])});
}

The range() function
func]]></description><category></category></item></channel></rss>