8000 array.$remove: always remove by searching for item · bencode/vue@c427029 · GitHub
[go: up one dir, main page]

Skip to content

Commit c427029

Browse files
committed
array.$remove: always remove by searching for item
1 parent b4a3a63 commit c427029

File tree

2 files changed

+2
-9
lines changed

2 files changed

+2
-9
lines changed

src/observer/array.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,10 @@ _.define(
8383
_.define(
8484
arrayProto,
8585
'$remove',
86-
function $remove (index) {
86+
function $remove (item) {
8787
/* istanbul ignore if */
8888
if (!this.length) return
89-
if (typeof index !== 'number') {
90-
index = _.indexOf(this, index)
91-
}
89+
var index = _.indexOf(this, item)
9290
if (index > -1) {
9391
return this.splice(index, 1)
9492
}

test/unit/specs/observer/observer_spec.js

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -153,11 +153,6 @@ describe('Observer', function () {
153153
var ob = Observer.create(arr)
154154
var dep = ob.dep
155155
spyOn(dep, 'notify')
156-
// remove by index
157-
arr.$remove(0)
158-
expect(arr.length).toBe(1)
159-
expect(arr[0]).toBe(obj2)
160-
expect(dep.notify.calls.count()).toBe(1)
161156
// remove by identity, not in array
162157
arr.$remove(obj1)
163158
expect(arr.length).toBe(1)

0 commit comments

Comments
 (0)
0