Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

通过ES6 Proxy实现的监测数据变化

NotificationsYou must be signed in to change notification settings

rwson/Proxy-obverse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#Proxy-obverse

通过ES6 Proxy实现的监测数据变化(支持多级对象或数组)

API

var observe = require(path/to/Proxy-obverse);var arr = [    1,    2,    3,    [        4,        5,        6    ]];var arrOb = observe(arr, function(type, changed, oldV, newV) {//  当被监测的值发生变化时,触发回调函数});arrOb.push(5);arrOb[3].shift();//  ...

回调参数:

参数名意义类型
type对数据所做的操作String
changed修改的值Array/Object/Number/String etc.
oldV原来的值Array
newV修改后的值Array
var observe = require(path/to/Proxy-obverse);var obj = {    name: "foo"};var objOb = observe(obj, function(type, prop, oldV, newV) {//  当被监测的值发生变化时,触发回调函数});objOb.name = "bar";objOb.year = 2017;//  ...

回调参数:

参数名意义类型
type对数据所做的操作String
prop修改的属性名String
oldV原来的值Array/Object/Number/String etc.
newV修改后的值Array/Object/Number/String etc.

Tips

触发回调函数的条件是对数据产生直接变化的操作。当数据类型为数组时,push/pop/shift/unshift/splice或者直接修改某个下标的值这些操作,都会触发后面的回调函数;当数据类型为对象时,直接修改某个属性值或者新增一个属性值时,也会触发后面的回调函数。

About

通过ES6 Proxy实现的监测数据变化

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp