@@ -3530,23 +3530,6 @@ initMixin(Vue);
3530
3530
stateMixin ( Vue ) ;
3531
3531
eventsMixin ( Vue ) ;
3532
3532
3533
- /**
3534
- * react-vue change
3535
- */
3536
- // lifecycleMixin(Vue)
3537
- // renderMixin(Vue)
3538
-
3539
- /**
3540
- * react-vue change
3541
- */
3542
- Vue . prototype . $nextTick = function ( fn ) {
3543
- return nextTick ( fn , this )
3544
- } ;
3545
-
3546
- Vue . prototype . $destroy = function ( fn ) {
3547
- // nothing
3548
- } ;
3549
-
3550
3533
/* */
3551
3534
3552
3535
function initUse ( Vue ) {
@@ -3877,7 +3860,63 @@ Object.defineProperty(Vue.prototype, '$isServer', {
3877
3860
get : isServerRendering
3878
3861
} ) ;
3879
3862
3880
- Vue . version = '0.1.1' ;
3863
+ Vue . version = '0.1.3' ;
3864
+
3865
+ //
3866
+
3867
+ function lifeCycleMixin ( Vue ) {
3868
+ Vue . prototype . $destroy = function ( fn ) {
3869
+ var vm = this ;
3870
+ if ( vm . _isBeingDestroyed ) {
3871
+ return
3872
+ }
3873
+ // callHook(vm, 'beforeDestroy')
3874
+ vm . _isBeingDestroyed = true ;
3875
+ // remove self from parent
3876
+ var parent = vm . $parent ;
3877
+ if ( parent && ! parent . _isBeingDestroyed && ! vm . $options . abstract ) {
3878
+ remove ( parent . $children , vm ) ;
3879
+ }
3880
+ // teardown watchers
3881
+ if ( vm . _watcher ) {
3882
+ vm . _watcher . teardown ( ) ;
3883
+ }
3884
+ var i = vm . _watchers . length ;
3885
+ while ( i -- ) {
3886
+ vm . _watchers [ i ] . teardown ( ) ;
3887
+ }
3888
+ // remove reference from data ob
3889
+ // frozen object may not have observer.
3890
+ if ( vm . _data . __ob__ ) {
3891
+ vm . _data . __ob__ . vmCount -- ;
3892
+ }
3893
+ // call the last hook...
3894
+ vm . _isDestroyed = true ;
3895
+ // invoke destroy hooks on current rendered tree
3896
+ // vm.__patch__(vm._vnode, null)
3897
+ // fire destroyed hook
3898
+ // callHook(vm, 'destroyed')
3899
+ // turn off all instance listeners.
3900
+ vm . $off ( ) ;
3901
+ // remove __vue__ reference
3902
+ if ( vm . $el ) {
3903
+ vm . $el . __vue__ = null ;
3904
+ }
3905
+ // remove reference to DOM nodes (prevents leak)
3906
+ vm . $options . _parentElm = vm . $options . _refElm = null ;
3907
+ } ;
3908
+ }
3909
+
3910
+ //
3911
+
3912
+ function renderMixin ( Vue ) {
3913
+ Vue . prototype . $nextTick = function ( fn ) {
3914
+ return nextTick ( fn , this )
3915
+ } ;
3916
+ }
3917
+
3918
+ lifeCycleMixin ( Vue ) ;
3919
+ renderMixin ( Vue ) ;
3881
3920
3882
3921
/**
3883
3922
* Reference to mobx https://github.com/mobxjs/mobx-react-vue/blob/master/src/observer.js
0 commit comments