diff --git a/src/core/instance/proxy.js b/src/core/instance/proxy.js index 95c2b97a91f..b1884f7118c 100644 --- a/src/core/instance/proxy.js +++ b/src/core/instance/proxy.js @@ -9,7 +9,7 @@ if (process.env.NODE_ENV !== 'production') { const allowedGlobals = makeMap( 'Infinity,undefined,NaN,isFinite,isNaN,' + 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' + - 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' + + 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,' + 'require' // for Webpack/Browserify ) diff --git a/test/unit/features/filter/filter.spec.js b/test/unit/features/filter/filter.spec.js index 82c57a3d62e..854ea575064 100644 --- a/test/unit/features/filter/filter.spec.js +++ b/test/unit/features/filter/filter.spec.js @@ -194,4 +194,11 @@ describe('Filters', () => { it('support template string', () => { expect(parseFilters('`a | ${b}c` | d')).toBe('_f("d")(`a | ${b}c`)') }) + + it('bigint support', () => { + const vm = new Vue({ + template: `
{{ BigInt(BigInt(10000000)) + BigInt(2000000000n) * 3000000n }}
` + }).$mount() + expect(vm.$el.textContent).toBe('6000000010000000') + }) })