File tree Expand file tree Collapse file tree 2 files changed +7
-18
lines changed Expand file tree Collapse file tree 2 files changed +7
-18
lines changed Original file line number Diff line number Diff line change @@ -14,16 +14,12 @@ _.define(
1414 objProto ,
1515 '$add' ,
1616 function $add ( key , val ) {
17+ if ( this . hasOwnProperty ( key ) ) return
1718 var ob = this . __ob__
18- if ( ! ob ) {
19+ if ( ! ob || _ . isReserved ( key ) ) {
1920 this [ key ] = val
2021 return
2122 }
22- if ( _ . isReserved ( key ) ) {
23- _ . warn ( 'Refused to $add reserved key: ' + key )
24- return
25- }
26- if ( this . hasOwnProperty ( key ) ) return
2723 ob . convert ( key , val )
2824 if ( ob . vms ) {
2925 var i = ob . vms . length
@@ -50,17 +46,12 @@ _.define(
5046 objProto ,
5147 '$delete' ,
5248 function $delete ( key ) {
49+ if ( ! this . hasOwnProperty ( key ) ) return
50+ delete this [ key ]
5351 var ob = this . __ob__
54- if ( ! ob ) {
55- delete this [ key ]
56- return
57- }
58- if ( _ . isReserved ( key ) ) {
59- _ . warn ( 'Refused to $add reserved key: ' + key )
52+ if ( ! ob || _ . isReserved ( key ) ) {
6053 return
6154 }
62- if ( ! this . hasOwnProperty ( key ) ) return
63- delete this [ key ]
6455 if ( ob . vms ) {
6556 var i = ob . vms . length
6657 while ( i -- ) {
Original file line number Diff line number Diff line change @@ -65,10 +65,9 @@ describe('Data API', function () {
6565 expect ( vm . c ) . toBe ( 1 )
6666 expect ( vm . _data . c ) . toBe ( 1 )
6767 expect ( vm . _digest ) . toHaveBeenCalled ( )
68- // reserved key should warn
68+ // reserved key should not be proxied
6969 vm . $add ( '_c' , 1 )
7070 expect ( vm . _c ) . toBeUndefined ( )
71- expect ( _ . warn ) . toHaveBeenCalled ( )
7271 } )
7372
7473 it ( '$delete' , function ( ) {
@@ -77,10 +76,9 @@ describe('Data API', function () {
7776 expect ( vm . hasOwnProperty ( 'a' ) ) . toBe ( false )
7877 expect ( vm . _data . hasOwnProperty ( 'a' ) ) . toBe ( false )
7978 expect ( vm . _digest ) . toHaveBeenCalled ( )
80- // reserved key should warn
79+ // reserved key should not be deleted
8180 vm . $delete ( '_data' )
8281 expect ( vm . _data ) . toBeTruthy ( )
83- expect ( _ . warn ) . toHaveBeenCalled ( )
8482 } )
8583
8684 it ( '$watch' , function ( done ) {
You can’t perform that action at this time.
0 commit comments