From 7a66f5f2e8121e3fc01ffce9a996d79ae4f4363d Mon Sep 17 00:00:00 2001 From: berlin <1580940252@qq.com> Date: Sat, 3 Feb 2024 20:07:14 +0800 Subject: [PATCH] fix: mv wrapReturn behind transform --- .../test/fixtures/optional-chain.test.js | 23 +++++++++++++++++++ .../react-live/src/utils/transpile/index.ts | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 packages/react-live/src/utils/test/fixtures/optional-chain.test.js diff --git a/packages/react-live/src/utils/test/fixtures/optional-chain.test.js b/packages/react-live/src/utils/test/fixtures/optional-chain.test.js new file mode 100644 index 0000000..56efbc1 --- /dev/null +++ b/packages/react-live/src/utils/test/fixtures/optional-chain.test.js @@ -0,0 +1,23 @@ +import { generateElement } from "../../transpile"; +import { shallow } from "../renderer"; + +describe("transpile", () => { + it("should support optional chain", () => { + const code = `function Demo() { + return

+ {'1'?.toString()} +

+ }`; + const Component = generateElement({ code }); + const wrapper = shallow(); + + expect(wrapper.html()).toMatchInlineSnapshot( + `"

1

"` + ); + }); +}); diff --git a/packages/react-live/src/utils/transpile/index.ts b/packages/react-live/src/utils/transpile/index.ts index 84f977f..a939057 100644 --- a/packages/react-live/src/utils/transpile/index.ts +++ b/packages/react-live/src/utils/transpile/index.ts @@ -35,10 +35,10 @@ export const generateElement = ( const transformed = compose( addJsxConst, transform({ transforms: ["imports"] }), - wrapReturn, spliceJsxConst, trimCode, transform({ transforms: firstPassTransforms }), + wrapReturn, trimCode )(code);