自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

渔道的博客

If you can't explain it to a six year old

  • 博客(127)
  • 资源 (3)
  • 收藏
  • 关注

原创 微信小程序实战-03翻页时钟-3

本项目的综合性较强,对wxss、wxml、js的综合运用需要较为熟悉。是一个非常好的练手小项目。

2024-01-12 22:24:28 1124

原创 CSS基础笔记-05layout

本文研究了CSS layout的normal flow,flex,grip和float。

2024-01-10 21:57:51 1172

原创 微信小程序实战-02翻页时钟-2

本文记录了翻页时钟的“6个页面的静态渲染和计时”功能的实现。

2024-01-09 21:18:56 1690

原创 微信小程序实战-01翻页时钟-1

微信小程序实战之翻页时钟

2024-01-08 22:26:50 1796

原创 CSS基础笔记-04cascade-specificity-inheritance

本文对级联(cascade),具体性(specificity),源顺序(source order),继承性(inheritance)作了系统性的理解和学习。

2024-01-07 22:01:11 1343

原创 CSS基础笔记-03选择器

学习本文掌握了10种selectors

2024-01-06 22:20:34 1280

原创 CSS基础笔记-02动画

学习css动画的基本用法

2024-01-05 17:28:23 1299

原创 CSS基础笔记-01CSS概述

CSS是什么?有什么作用?怎么编写CSS?怎样添加CSS?本文对CSS的四个方面作了学习并形成学习笔记。

2024-01-05 14:35:20 1218

原创 微信小程序开发系列-14模块的导入与导出

通过本文的学习,掌握了在微信小程序中模块的导入导出, 既可以使用ES modules标准,也可以使用CommonJS标准。

2024-01-04 20:45:00 1877

原创 微信小程序开发系列-13微信小程序框架认知

本文梳理了小程序框架性的内容:1. 小程序的整体框架;2. 小程序的生命周期;3. 页面的生命周期;4. 组件框架;5. 组件的生命周期;

2024-01-03 12:27:57 1273

原创 微信小程序开发系列-12label组件使用理解

对于详细解读了微信小程序中组件label的作用。

2024-01-02 17:37:29 1587

原创 微信小程序开发系列-11组件间通信02

通过本文的学习,掌握了behaviors的共享特性和获取组件实例的方法,为组件间的通信提供了非常大的操作空间

2024-01-01 18:13:51 1300

原创 微信小程序-父子页面传值

父页面:hotspot子页面:topic设计:hotspot页面,点击“请选择话题”,然后跳转到topic页面,topic页面显示默认的 热点列表;点击任意热点话题,跳转回hotspot页面并显示已选择的话题title。</hotspot.jsdata: {topicTitle:"请选择话题"},/* 跳转到topic页面 */})},/* 设置topicTitle */topic.wxml。

2023-12-31 23:00:54 529

原创 [JS设计模式]Prototype Pattern

Prototype pattern可便于同类型的多个对象共享属性。原型(prototype)是JS原生的对象,其他对象可以通过原型链(prototype chain)来访问原型。单独看这句描述可能还是有点儿抽象,下面通过具体的示例来详细阐述。这里可以看到,有一个name属性;根据ES6类的语法规则,所有在类中定义的属性(本例的属性bark),都自动加入到类的prototype中,Dog类本身有两个属性:constructor和bark。有两种方式可以查看,一种是通过类本身的prototype。

2023-12-31 22:20:04 529

原创 微信小程序开发系列-10组件间通信01

页面可以通过数据绑定进行逻辑层和渲染层通信。自定义组件可理解为一种特殊的页面,因此组件间、组件与“页面”间应该也是可以通信的。那么本文就学习下组件间的通信方式。

2023-12-31 22:07:56 1051

原创 微信小程序开发系列-09自定义组件样式特性

本文将学习自定义组件样式的4个特性:样式隔离、外部样式、引用页面或父组件样式、虚拟化组件节点。

2023-12-30 23:53:42 1562

原创 微信小程序开发系列-08自定义组件模版特性

本文将学习自定义组件模版的三个特性:数据绑定、多slot、抽象节点。

2023-12-30 21:20:39 970

原创 微信小程序开发系列-07组件

掌握基础组件、自定义组件的使用以及引入第三方组件

2023-12-29 21:43:42 1836

原创 [JS设计模式]Observer Pattern

观察者模式对象和观察者对象没有紧密耦合,并且可以随时(去)耦合。EventObserver中定义了subscribe和unsubscribe函数来向其订阅和取消订阅观察者,同时通过broadcast函数向所有观察者通知事件,再由观察者自己决定对收到的事件做具体的处理。观察者需要收到事件,首先要进行订阅,当有事件产生时,EventObserver才会将事件传递给订阅者(即观察者)。上述示例代码中,定义了2个观察者(logger1和logge2),可通过EventObserver通知所有的观察者某个事件。

2023-12-28 21:51:37 349

原创 微信小程序开发系列-06事件

掌握事件的定义和使用

2023-12-28 21:35:16 1151

原创 [JS设计模式] Module Pattern

这降低了在代码库的其他部分声明的命名冲突的风险,因为这些值在全局作用域中不可用。可以看到,math.js中的4个显示声明的函数可以导出,index.js中也能正常导入这四个函数,并正常调用。不必担心模块使用者会意外覆盖模块内部的变量的值,这些变量可能与模块的私有变量具有相同的名称:它可以。,可以在index.js中直接调用。仅仅将math.js中的函数export还不够,还需要在index.js中,将需要调用的函数导入。为了使index.js能调用到math.js中的函数,则需要先将这几个函数导出。

2023-12-27 22:22:29 967

原创 微信小程序开发系列-05登录小程序

掌握微信小程序的登录流程

2023-12-27 20:23:12 1717

原创 微信小程序开发系列-04获取用户图像和昵称

掌握微信小程序获取用户头像和昵称

2023-12-26 21:28:30 2986 2

原创 微信小程序开发系列-03全局配置中的“window”和“tabBar”

本文继续学习下全局配置中的“window”和“tabBar”。

2023-12-25 15:44:03 1134

原创 [JS设计模式]Mixin Pattern

Mixin是一个对象,我们可以使用它来为另一个对象或类添加可重用的功能,而无需使用继承。我们不能单独使用mixins:它们的唯一目的是在没有继承的情况下向对象或类添加功能。假设对于我们的应用程序,我们需要创建多个狗。然而,我们创建的基本狗没有任何属性,只有一个name属性。一只狗能做的不仅仅是有一个名字。它应该会叫,会摇尾巴,会玩!我们可以创建一个mixin,为我们提供bark, wagTail和play属性,而不是直接添加到Dog类中。我们可以用将添加到Dog原型中。这样Dog的每个新实例都可以访问。

2023-12-23 21:21:44 550

原创 [JS设计模式]Mediator/Middleware Pattern

以航空公司的空中飞行管控为例,来解释mediator模式。假设,每架飞机相互之间都是自己直接沟通,整个沟通网络会非常繁杂而不好控制,可能会出现意外情况,后果将非常严重。那么,实际的飞行调度是通过AOC来完成,而AOC将相当于一个mediator的角色。中介模式使组件能够通过一个中心点(中介)相互交互。各组件之间并不是直接交互,而是接收请求并将其转发!在JavaScript中,中介通常只是一个对象字面量或一个函数。中介模式的一个很好的用例是聊天室!相反,聊天室充当了用户之间的中介。

2023-12-23 21:16:27 81

原创 [JS设计模式]Flyweight Pattern

每个区都有多个图书馆,每个图书馆都有大量的图书,每种书都会有多本,那么该城市要建一个图书管理系统显然需要非常大的内存资源。一本书通常有多个属性,例如,书名、作者、ISBN、图例、所属图书馆、总数量、在馆数量等等。如果每一本书的每一个副本,我们都创建一个对象来进行管理,有些共有的属性所占用的内存是一种显而易见的浪费。那么,在这种场景下,使用享元模式就能极大的优化图书管理系统的内存。通过通俗的场景描述了享元模式的作用,接下来,在技术层面来看看要怎样实现。需要说明的是,该模式也可以用于其他设计语言,不限于JS。

2023-12-22 22:46:00 356

原创 微信小程序开发系列-02注册小程序

创建了一个最小的小程序,但是,还有3个疑问没有弄清楚,还是基于demo1工程,这篇文章继续探索。

2023-12-22 22:44:04 1573

原创 微信小程序开发系列-01创建一个最小的小程序项目

本文讲述了通过微信开发者工具,创建一个新的小程序项目,完全从零开始,不依赖开发者工具的模板。目的是为了更好的理解小程序工程项目的构成。

2023-12-21 23:45:00 1981

原创 [JS设计模式]Command Pattern

不是将方法直接耦合到OrderManager实例,它们现在是分离的、解耦的函数,我们可以通过OrderManager上可用的execute方法调用它们。命令模式允许我们将方法与执行该方法的对象解耦。如果您正在处理具有特定生命周期的命令,或者应该在特定时间排队并执行的命令,那么它可以为您提供更多的控制。以后可能决定重命名某些方法,或者这些方法的功能发生了变化。使用命令模式,我们可以将执行特定任务的对象与调用该方法(执行特定任务)的对象解耦。使用命令模式,我们可以将执行特定任务的对象与调用该方法的对象解耦。

2023-12-21 23:00:00 317

原创 vscode配置node.js调试环境

node.js基于VSCode的开发环境的搭建非常简单。说明:本文的前置条件是已安装好node.js(具体安装不再赘述,如有需要可评论区留言)。

2023-12-20 14:39:08 1426

原创 [JS设计模式]Factory pattern

工厂函数是任何不使用class或的函数并且会return一个对象。因此,工厂函数不使用new关键字。工厂函数在JavaScript中一直很有吸引力,因为它们提供了轻松生成对象实例的能力,而无需深入到类和new关键字的复杂性中。JavaScript提供了一种非常方便的对象字面语法来创建对象。看起来和JSON非常类似。(JavaScript’s Object literal Notation)其实JSON是基于javascript的对象字面量表示来的。的左边是属性名,的右边是属性值。

2023-12-20 14:28:22 421

原创 nodejs手动创建一个新的工程

1. 手动创建nodejs工程;2. 手动搭建自动语法检查;

2023-12-19 13:01:40 349

原创 [JS设计模式]Singleton Pattern

单例是可以被实例化一次的类,并且可以被全局访问。

2023-12-19 12:36:22 663

原创 理解ASAN的shadow memory和读懂报错信息

什么是ASANASAN(Address Sanitizer)是一个内存检测工具。gcc4.8版本及以上自带。支持多平台(x86, ARM, MIPS (both 32- and 64-bit versions of all architectures), PowerPC64)、多操作系统(Linux, Darwin (OS X and iOS Simulator), FreeBSD, Android)。ASAN主要由两部分构成:instrumentation module和run-time librar

2021-06-16 20:37:31 4096

原创 gcc自带sanitizer工具使用

Sanitizers是谷歌发起的开源工具集,包括了AddressSanitizer, MemorySanitizer, ThreadSanitizer, LeakSanitizer,Sanitizers项目本是LLVM项目的一部分,但GNU也将该系列工具加入到了自家的GCC编译器中。GCC从4.8版本开始逐步支持 Sanitizer,这些工具都是查找隐藏Bug的利器。AddressSanitizer可用于检测 memory out-of-bounds 和 use-after-free。Address

2021-06-16 20:33:31 5822

原创 理解freestanding implementation 和 hosted implementation

The ISO C standard defines (in clause 4) two classes of conforming implementation. Aconforming hosted implementation supports the whole standard including all the libraryfacilities; a conforming freestanding implementation is only required to provide ce.

2021-06-10 22:04:32 1317

原创 谈谈time_scale和time_base的理解

time_scale和time_base的理解

2021-02-23 19:15:21 1318

原创 pts_dts解析

在ffmpeg中,经常看到avpriv_set_pts_info(st, 33, 1, 90000);用来设置AVStream的time_base。void avpriv_set_pts_info(AVStream *s, int pts_wrap_bits, unsigned int pts_num, unsigned int pts_den)但是,为什么pts_wrap_bits为33,pts_den为90000,我们并不知道原因。本文将详细讲解,为什么pts、dts的采样频率为90KHz。ISO

2021-02-21 18:49:49 814

原创 复合字面量(compound literals)详解

字面量是除了符号常量之外的常量。如,1是int型字面量,3.14是float型字面量,'C’是char型字面量,'Yudao’是字符串字面量。那么,数组和结构体是否也能有字面量来表示呢?如定义了这种"字面量",能带来什么好处呢(后文中逐一介绍)? 因此,C99标准委员会就新增了复合字面量(compound literals)。文章目录定义语法约束语义用法文件作用域的匿名数组函数作用域的匿名数组同一函数作用域的单例复合字面量"对象"定义语法( type-name ) { initializer-li

2021-02-20 18:41:54 3786 1

python-pdf转docx工具

python-pdf转docx工具

2024-01-05

canvas_animation.mp4

本短视频演示了canvas animation。结合博文https://blog.csdn.net/weixin_43708622/article/details/107197911观看

2020-07-08

menu_method.py

tkinter的menu method示例代码,结合https://blog.csdn.net/weixin_43708622/article/details/107053182一起学习

2020-06-30

menu_attributes.py

tkinter的menu attributes示例代码,结合https://blog.csdn.net/weixin_43708622/article/details/107053182一起学习

2020-06-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除