File tree Expand file tree Collapse file tree 2 files changed +25
-0
lines changed Expand file tree Collapse file tree 2 files changed +25
-0
lines changed Original file line number Diff line number Diff line change @@ -93,6 +93,16 @@ exports.use = function (plugin) {
9393 return this
9494}
9595
96+ /**
97+ * Apply a global mixin by merging it into the default
98+ * options.
99+ */
100+
101+ exports . mixin = function ( mixin ) {
102+ var Vue = _ . Vue
103+ Vue . options = _ . mergeOptions ( Vue . options , mixin )
104+ }
105+
96106/**
97107 * Create asset registration methods with the following
98108 * signature:
Original file line number Diff line number Diff line change @@ -57,6 +57,21 @@ describe('Global API', function () {
5757 delete Vue . options . directives [ 'plugin-test' ]
5858 } )
5959
60+ it ( 'global mixin' , function ( ) {
61+ var options = Vue . options
62+ var spy = jasmine . createSpy ( 'global mixin' )
63+ Vue . mixin ( {
64+ created : function ( ) {
65+ spy ( this . $options . myOption )
66+ }
67+ } )
68+ new Vue ( {
69+ myOption : 'hello'
70+ } )
71+ expect ( spy ) . toHaveBeenCalledWith ( 'hello' )
72+ Vue . options = options
73+ } )
74+
6075 describe ( 'Asset registration' , function ( ) {
6176
6277 var Test = Vue . extend ( )
You can’t perform that action at this time.
0 commit comments