From 5d9966f9eb4b1026356a3f824568f9804faa05ff Mon Sep 17 00:00:00 2001 From: LongYinan Date: Sun, 6 Sep 2020 19:07:53 +0800 Subject: [PATCH] fix(core): wrong this in function call expr in optional chains --- packages/core/index.ts | 2 +- .../optional-chain-function-call.spec.ts | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 packages/integrate/__tests__/optional-call/optional-chain-function-call.spec.ts diff --git a/packages/core/index.ts b/packages/core/index.ts index d89c9cd1a..cad8a071e 100644 --- a/packages/core/index.ts +++ b/packages/core/index.ts @@ -52,4 +52,4 @@ export function transform(source: string, path: string, options?: Options) { return bindings.transform(source, path, transformOption(path, options)) } -export const SWC_VERSION = '1.2.22' +export const SWC_VERSION = '57112fc' diff --git a/packages/integrate/__tests__/optional-call/optional-chain-function-call.spec.ts b/packages/integrate/__tests__/optional-call/optional-chain-function-call.spec.ts new file mode 100644 index 000000000..906b26965 --- /dev/null +++ b/packages/integrate/__tests__/optional-call/optional-chain-function-call.spec.ts @@ -0,0 +1,17 @@ +import test from 'ava' + +test('optional chain function call', (t) => { + const obj = { + a: { + b: { + c: function () { + return this.foo + }, + foo: 2, + }, + foo: 1, + }, + } + + t.is(obj?.a?.b?.c(), 2) +})