{"version":1,"pages":[{"id":"QeW4MKw6OWXiUC9745Kh","title":"陈玉明","pathname":"/blog","siteSpaceId":"sitesp_Nqz9D","description":"前端开发工程师/产品经理/UI设计"},{"id":"zWPHmZyEou9OVY9nFeU5","title":"draggable拖拽排序和pointerEvent应用","pathname":"/blog/draggable-tuo-zhuai-pai-xu-he-pointerevent-ying-yong","siteSpaceId":"sitesp_Nqz9D","description":"draggable常用于PC页面的拖拽排序功能，由于原理基于HTML5中drag/drop/dragstart 等相关的事件，但是兼容性在h5/mobile中较差，且不支持！pointerEvent常用于需要多端兼容的拖动/拖拽项目需求，原理基于鼠标/触摸=>指针/点的监听事件，兼容性较好"},{"id":"dhGBHbRYNyxCvXRoK5Il","title":"网页多语言翻译-适配ant/element","pathname":"/blog/wang-ye-duo-yu-yan-fan-yi-shi-pei-antelement","siteSpaceId":"sitesp_Nqz9D","description":"目前ant/element的i18n多语言支持仅仅支持部分初始化配置设置的按钮以及菜单，无法实现tag/动态数据/input校验/input提示/modal等动态类似于翻译的渲染"},{"id":"bHhsjzVIFn68VnF9Ljpf","title":"vue环境中文件的读取/引用/操作的干货","pathname":"/blog/vue-huan-jing-zhong-wen-jian-de-du-qu-yin-yong-cao-zuo-de-gan-huo","siteSpaceId":"sitesp_Nqz9D","description":"vite/vue环境，文件的读取/引用干货"},{"id":"EBTk67ZylbeHZG2GtK3S","title":"threejs基础示例","pathname":"/blog/threejs-ji-chu-shi-li","siteSpaceId":"sitesp_Nqz9D","description":"简单的建模通过threejs创建模型并且导入场景渲染模型。用于动态控制模型生成数据，实现动态渲染，结合实际应用场景可用于工业化生产"},{"id":"j9aXG3zbb3oHAL2fVBR3","title":"浏览器获取客户端ip（非远程请求或依赖第三方api）","pathname":"/blog/liu-lan-qi-huo-qu-ke-hu-duan-ip-fei-yuan-cheng-qing-qiu-huo-yi-lai-di-san-fang-api","siteSpaceId":"sitesp_Nqz9D","description":"浏览器获取本机ip或者mac由于权限问题无法直接获取，客户端无node环境，仅仅访问网站地址是无法直接获取到本机的网络信息的，综合目前唯一的方式就是客户端安装浏览器插件WebRTCControl，可以支持edge/谷歌/360等浏览器"},{"id":"CRGmSw7fIM1OsPvyUL0H","title":"动态修改svg内部attr属性","pathname":"/blog/dong-tai-xiu-gai-svg-nei-bu-attr-shu-xing","siteSpaceId":"sitesp_Nqz9D","description":"根据页面dom中svg的id获取当前svg的document，拿到虚拟dom之后通过setAttribute修改vmDom参数"},{"id":"O7eiQek9Yrw8w6ihcSxM","title":"socket/mqtt 保留雪花算法/解决失准/bigint","pathname":"/blog/socketmqtt-bao-liu-xue-hua-suan-fa-jie-jue-shi-zhun-bigint","siteSpaceId":"sitesp_Nqz9D","description":"推送的消息无法使用long int类型，那么又要保留雪花算法和保留long类型的整数就需要使用到bigint"},{"id":"bf342f2bf8540b15e2fa33e3abb1201888e5296d","title":"低代码看板中动态加载图表模块和接口数据","pathname":"/blog/di-dai-ma-kan-ban-zhong-dong-tai-jia-zai-tu-biao-mo-kuai-he-jie-kou-shu-ju","siteSpaceId":"sitesp_Nqz9D"},{"id":"49b063438b923f067a0dc2c2d089e3ac0c7f81db","title":"富文本描边在画布缩放时变细或丢失的处理","pathname":"/blog/fu-wen-ben-miao-bian-zai-hua-bu-suo-fang-shi-bian-xi-huo-diu-shi-de-chu-li","siteSpaceId":"sitesp_Nqz9D"},{"id":"fa3e99d576fc1b937f9eb0778ab3676b0bcc0ba1","title":"画布编辑器中的撤销重做和剪贴板处理","pathname":"/blog/hua-bu-bian-ji-qi-zhong-de-che-xiao-zhong-zuo-he-jian-tie-ban-chu-li","siteSpaceId":"sitesp_Nqz9D"},{"id":"e2fa3988ca4346749d5765a83b78917943241793","title":"图片生成3D模型的接口进度和Three预览","pathname":"/blog/tu-pian-sheng-cheng-3d-mo-xing-de-jie-kou-jin-du-he-three-yu-lan","siteSpaceId":"sitesp_Nqz9D"},{"id":"58d0a33fc64a3aa34fe7ee332a3de6547727bd26","title":"Chrome插件清理当前网站缓存和本地存储","pathname":"/blog/chrome-cha-jian-qing-li-dang-qian-wang-zhan-huan-cun-he-ben-di-cun-chu","siteSpaceId":"sitesp_Nqz9D"},{"id":"797e0bb6f2be2fded5d3e6bd1a011628adf424e9","title":"Electron后台静默运行本地字体HTTP服务","pathname":"/blog/electron-hou-tai-jing-mo-yun-xing-ben-di-zi-ti-http-fu-wu","siteSpaceId":"sitesp_Nqz9D"},{"id":"c0e8235f68b43aac3360706ae7f4cbe724fce7f5","title":"Electron项目自动打Tag打包Release并上传CDN","pathname":"/blog/electron-xiang-mu-zi-dong-da-tag-da-bao-release-bing-shang-chuan-cdn","siteSpaceId":"sitesp_Nqz9D"},{"id":"af48287f9f8f120b5c077c9751a084d80a8fec43","title":"Leafer中接入Quill富文本并扩展自定义格式","pathname":"/blog/leafer-zhong-jie-ru-quill-fu-wen-ben-bing-kuo-zhan-zi-ding-yi-ge-shi","siteSpaceId":"sitesp_Nqz9D"},{"id":"22484700d8e8e857f44dd5b74b929ae87f00757c","title":"Vite项目部署GitHubPages的自动化配置","pathname":"/blog/vite-xiang-mu-bu-shu-githubpages-de-zi-dong-hua-pei-zhi","siteSpaceId":"sitesp_Nqz9D"}]}