用过Canvas的都知道它的API比较多,使用起来也很麻烦,比如我想绘制一个圆形就要调一堆API,对开发算不上友好。为了解决这个痛点,诞生了例如PIXI、ZRender、Fabric等Canvas库,对CanvasAPI进行了一系列的封装。今天主要介绍一下社区几个比较有代表性的Canvas渲染引擎的
有些成熟的技术方案,用不着创新,固化下来的模式(pattern),学就完了。例如,穿透类缓存的使用,“CacheAsidePattern”就是很好的实践沉淀,故今天聊一聊CacheAsidePattern。画外音:就好像“设计模式”,它就是沉淀下来的设计方法。什么是“CacheAsidePatter
作者简介|Qifan,携程高级工程师,专注移动端开发;Yinuo,携程高级工程师,专注移动端开发;popeye,携程软件技术专家,关注移动端跨端技术,致力于快速,高性能地支撑业务开发。一、前言携程酒店业务使用Flutter技术开发的时间快接近两年,这期间有列表页、详情页、相册页等页面使用了Flutt
引言研发工程师日常的工作除了开发实现新需求之外,排查定位问题也是重要的组成部分。如果在发生线上故障的时能够快速定位线上bug并且修复bug,不仅是研发工程师技术能力的重要体现,同时也可以帮助线上及时止血避免平台故障进一步蔓延,从而导致影响用户体验或者产生不可挽回的资损。但是实际上很多研发工程师由于工
大家好,我是前端西瓜哥。事件订阅是模块间解耦的常见方式。比如相隔遥远的两个组件,可以通过一个订阅,一个发布的方式,实现数据通信。下面我们来看看事件订阅的几种设计风格。监听器函数第一种是 使用监听器函数本身作为标识符。常见的场景有DOM事件的绑定:复制consthandler=(){//do
如果你在Flask中启动过子线程,然后在子线程中读写过g对象或者尝试从request对象中读取url参数,那么,你肯定对下面这个报错不陌生:RuntimeError:Workingoutsideofrequestcontext..例如下面这段Flask代码:复制importthreadingfr
现在的很多程序应用,基本上都是需要多端覆盖,因此基于一个WebAPI的后端接口,来构建多端应用,如微信、H5、APP、WInForm、BS的Web管理端等都是常见的应用。本篇随笔概括性的介绍基于HBuilderX+UniApp+ThorUI的手机端前端开发处理,总结一下开发工具的设置,以及常见的H5