Browse Source

test/fix global filter registration

Evan You 10 years ago
parent
commit
e275b75af8

+ 1 - 1
src/core/config.js

@@ -38,7 +38,7 @@ export default {
     'component',
     'directive',
     'transition',
-    'filters'
+    'filter'
   ],
 
   /**

+ 4 - 6
src/core/global-api/index.js

@@ -13,12 +13,10 @@ export function initGlobalAPI (Vue) {
   Vue.delete = del
   Vue.nextTick = util.nextTick
 
-  Vue.options = {
-    directives: Object.create(null),
-    filters: Object.create(null),
-    components: Object.create(null),
-    transitions: Object.create(null)
-  }
+  Vue.options = Object.create(null)
+  config._assetTypes.forEach(type => {
+    Vue.options[type + 's'] = Object.create(null)
+  })
 
   initUse(Vue)
   initMixin(Vue)

+ 2 - 2
test/unit/features/global-api/global-assets-api.spec.js

@@ -3,8 +3,8 @@ import Vue from 'vue'
 describe('Global Assets API', () => {
   const Test = Vue.extend()
 
-  it('directive / transition', () => {
-    const assets = ['directive', 'transition']
+  it('directive / transition / filters', () => {
+    const assets = ['directive', 'transition', 'filter']
     assets.forEach(function (type) {
       const def = {}
       Test[type]('test', def)