首页 > TAG信息列表 > eventName

Fabricjs中canvas的事件绑定

var canvas = new fabric.Canvas('c') canvas.on({key:value,.....}) //key为eventname canvas.on('eventname',fun) canvas事件绑定源码↓ /** * Observes specified event * @memberOf fabric.Observable * @alias on * @param {String|Obje

设计模式-发布订阅模式(typescript版本)

实际操作: /** * example: * 订阅: * ObserveEvent.on(EventName,this.userInfo,this); * 发布: * ObserveEvent.emit(EventName,{userName:"小明",age:18,sex:"man"}); * 取消订阅: * ObserveEvent.on(EventName,this.userInfo); */ // call is faster than a

ElementUI源码之--emitter.js实现多层级父子组件间事件广播和事件派发

概要 ElementUI作为一个流行易用的前端UI组件库,受到了广大前端程序开发者的青睐。因此我们很有必要了解一下ElementUI有哪些值得我们学习地方,将值得借鉴的设计思想应用到自己的业务场景中。本系列本章旨在解构ElementUI源码的架构逻辑与组件设计细节,希望同学们可以get有用的技能,

js的发布订阅模式

function Event() { this.handlers = {} } Event.prototype.$on = function (type, eventName) { if (!(type in this.handlers)) { this.handlers[type] = [] } this.handlers[type].push(eventName) } Event.prototype.$emit = function (type, ...args) {

Vue $on的用法

转载:https://www.cnblogs.com/jin-zhe/p/13100194.html ue中使用 $emit(eventName) 触发事件,使用 $on(eventName) 监听事件 $emit(eventName) 触发当前实例上的事件,附加参数都会传给监听器回调。 o n

事件监听兼容性问题解决

function addEventListener(element, eventName, fn) { //判断当前浏览器是否支持addEventListener 方法 if (element.addEventistener) { element.addEventListener(eventName, fn); //第三个参数默认是false} } else if (element.attachEvent) { el

vue自定义指令防抖和节流

函数防抖和节流在平时业务中经常会用到,一般都是调用已经封装好的方法,下面介绍一种新的思路:vue自定义指令! 下面这段代码以防抖为例,el-input标签直接写上v-debounce,传入arg参数:search和expression表达式:‘input’,1000,seach为需要防抖的函数,'input'为绑定的事件名称,1000(ms)表示防

事件总线的原理

事件总线的原理: 总的来说,是利用了闭包。 function Emit(){ const events = {}; //发射一个事件 const emit = (eventName, options) => { if(events[eventName]){ events[eventName].forEach((event) => event(options)) } }; //监听一个事件

实现一个双向绑定和v-model

发布订阅模式 我把发布订阅的实现类单独提出来,这样代码看起来简洁 /* * 发布订阅 **/ class Pubsub { static instance = null; // 单例 static getInstance() { if (Pubsub.instance == null) { Pubsub.instance = new Pubsub; }

发布订阅模式

本文的创作启发来自于Vue中的EventBus(也有人叫中央事件总线),全文系博主原创,转载请标明出处,如有理解不当之处欢迎各位大佬赐教,谢谢! 本文代码秉承发布订阅模式的思想模拟实现了 Vue中的EvnetBus 那么,上代码! JS版 class Subscription { subscriptionStack = {}; on(

Lua 事件系统

要求:实现事件的监听、移除、派发 local EventSystem = {} local this = EventSystem this.mEventTable = {} this.mObjTable = {} --注册事件 function EventSystem:AddListener(eventName, handler, obj) if eventName == nil or (type(eventName) ~= 'string') and

vue组件传值eventBus

VUE eventBus问题背景:组件传值;在项目开发中,会发现组件传值是一个组基本的操作,也是用的最多的。但是很多时候可能涉及到爷爷和孙子,甚至重孙子之间需要的传值。这个时候eventBus就到了大显身手的时候了。eventBus 嗯 ,就叫一个事件公共汽车吧。每个人把需要共享给别人的物品就放在这

vue之事件总线

1.事件总线介绍 在vue中跨越层级的两个组件进行通信,若使用props传值和$emit触发的方式会十分繁琐,而事件总线的通信方式更适合跨越层级的组件通信。   2.事件总线原理 事件总线可以用一个对象来表示每一个事件 都有一个数组来记录这个事件的监听者 { "event1": [hander1, hande

vue ElementUI中dispatch和broadcast事件派发(通过mixin引入使用)

function broadcast(componentName, eventName, params) {   this.$children.forEach(child => {   var name = child.$options.componentName;   if (name === componentName) {     child.$emit.apply(child, [eventName].concat(params));   } else {     bro

FreeSwitch: ESL Inbound内联模式下如何设置单腿变量

outbound外联模式下,可以参考我先前写的文章:freeswitch: ESL中如何自定义事件及自定义事件的监听,使用export导出变量。但是inbound模式下,ESL client并未封装export命令,如果要给某条腿附加一个变量值,可以借助uuid_setvar命令。 一、命令行验证 1.1 启动freeswitch控制台,手动origina

vue 子组件给父组件传值

在vue中是通过自定义事件来实现的,子组件使用$emit()方法触发事件,父组件使用v-on指令监听子组件的自定义事件来完成通讯的: $emit()方法的语法形式如下: vue.$emit(eventName,[...args]) eventName是自定义事件名称 ,args是附加的参数

通过发布订阅模式实现组件间的通信

前言 各种技术框架,比如 vue、react 和小程序,实现父子组件和兄弟组件通信的方案有很多,大多方案都强依赖于框架本身。这里介绍一种通过发布和订阅的方式来实现组件通信的方案,纯 JavaScript 实现,可以适用于各种框架。 发布订阅模式 发布订阅模式包含三部分内容,发布者、订阅者和数据处

element - 广播和派遣函数

function broadcast(componentName, eventName, params) { this.$children.forEach(child => { var name = child.$options.componentName; if (name === componentName) { child.$emit.apply(child, [eventName].concat(params)); } else { br

Unity简易事件管理系统

简单的时间管理系统,根据名字注册和调用时间,也可以根据名字删除 using System; using System.Collections; using System.Collections.Generic; using UnityEngine; public class EventSystemManager { private static EventSystemManager main; private OnDesEvent des

Unity按键方法管理系统

管理手机返回键功能的系统,在跳转页面的时候注册返回事件为关关闭自身,自身关闭或回调生效时注销事件,还包括左右滑动事件 using System; using System.Collections; using System.Collections.Generic; using UnityEngine; public class GetMobileKeyManager : MonoBehaviour {

JAVA 实现 委托(事件)暂时只有无参的

import java.lang.reflect.Method; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * @Author 乔占江 qq:59663479 * @Data 2021/1/23 20:37 * @Description 委托实现,无参数版本,未考虑多线程安全 * @Versio

Ext事件机制

最初的事件处理方式 在早期,不存在事件的概念,开发者用javascript的两个函数来模拟事件机制(window.setTimeout和window.setInterval),由于很多原因,如效率低下等,发明了最原始的0级dom事件模型,为元素添加一个事件,在事件上绑定一个处理函数。 缺点: 这种模型不能为元素的事件添加多个

$on、$off、$once 事件监听器

$on、$off、$once 事件监听器 通过 $on(eventName, eventHandler) 侦听一个事件 通过 $once(eventName, eventHandler) 一次性侦听一个事件 通过 $off(eventName, eventHandler) 停止侦听一个事件 用处:可以将分开的代码写在一块,也无须将不需要的变量存到data中

极简 Node.js 入门 - 2.2 事件

极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node/events 前端对事件肯定不陌生,为 window 绑定 scroll 事件 window.addEventListener('scroll', ev => { console.log(ev); }); Node.js 大部分异步操作

清除控件某个事件的所有响应函数

   public void ClearEvent(System.Windows.Forms.Control control, string eventName) { if (control == null) return; try { Type cType = control.GetType(); EventInfo ei = cType.GetEvent( eventName,