diff --git a/packages/editor-skeleton/src/components/settings/main.ts b/packages/editor-skeleton/src/components/settings/main.ts index 64b0dbef0..6cc672c90 100644 --- a/packages/editor-skeleton/src/components/settings/main.ts +++ b/packages/editor-skeleton/src/components/settings/main.ts @@ -13,7 +13,7 @@ export class SettingsMain { private _sessionId = ''; - @obx.ref private _settings?: SettingTopEntry | null = null; + @obx.ref private _settings?: SettingTopEntry; @computed get length(): number | undefined { return this._settings?.nodes.length; diff --git a/packages/engine/build.plugin.js b/packages/engine/build.plugin.js index 5c4ab7bfb..cb0368d88 100644 --- a/packages/engine/build.plugin.js +++ b/packages/engine/build.plugin.js @@ -25,6 +25,25 @@ const releaseVersion = getVersion(); module.exports = ({ context, onGetWebpackConfig }) => { onGetWebpackConfig((config) => { + ['jsx', 'tsx'].forEach((rule) => { + config.module + .rule(rule) + .exclude.clear() + .add(/node_modules(?!(.+_component_demo|.+build-plugin-component))/) + .end() + .use('babel-loader') + .tap((options) => { + const { plugins = [] } = options; + console.log('plugins', plugins); + return { + ...options, + plugins: [ + ...plugins, + ['@babel/plugin-proposal-class-properties', { loose: true }], + ], + }; + }); + }); config.resolve .plugin('tsconfigpaths') .use(TsconfigPathsPlugin, [{ diff --git a/packages/engine/src/engine-core.ts b/packages/engine/src/engine-core.ts index 9913caa39..2d51e8cb7 100644 --- a/packages/engine/src/engine-core.ts +++ b/packages/engine/src/engine-core.ts @@ -172,7 +172,7 @@ export async function init( // 注册一批内置插件 await plugins.register(OutlinePlugin); await plugins.register(componentMetaParser(designer)); - await plugins.register(setterRegistry); + await plugins.register(setterRegistry, {}, { autoInit: true }); await plugins.register(defaultPanelRegistry(editor, designer)); await plugins.register(builtinHotkey); diff --git a/packages/ignitor/build.plugin.js b/packages/ignitor/build.plugin.js index ffa1d4957..308432796 100644 --- a/packages/ignitor/build.plugin.js +++ b/packages/ignitor/build.plugin.js @@ -6,6 +6,26 @@ const { version } = lernaConfig; module.exports = ({ context, onGetWebpackConfig }) => { onGetWebpackConfig((config) => { + ['jsx', 'tsx'].forEach((rule) => { + config.module + .rule(rule) + .exclude.clear() + .add(/node_modules(?!(.+_component_demo|.+build-plugin-component))/) + .end() + .use('babel-loader') + .tap((options) => { + const { plugins = [] } = options; + console.log('plugins', plugins); + return { + ...options, + plugins: [ + ...plugins, + ['@babel/plugin-proposal-class-properties', { loose: true }], + ], + }; + }); + }); + config.resolve.plugin('tsconfigpaths').use(TsconfigPathsPlugin, [ { configFile: './tsconfig.json', diff --git a/packages/rax-simulator-renderer/build.plugin.js b/packages/rax-simulator-renderer/build.plugin.js index d613f1f56..1c8604e63 100644 --- a/packages/rax-simulator-renderer/build.plugin.js +++ b/packages/rax-simulator-renderer/build.plugin.js @@ -1,5 +1,24 @@ module.exports = ({ onGetWebpackConfig }) => { onGetWebpackConfig((config) => { + ['jsx', 'tsx'].forEach((rule) => { + config.module + .rule(rule) + .exclude.clear() + .add(/node_modules(?!(.+_component_demo|.+build-plugin-component))/) + .end() + .use('babel-loader') + .tap((options) => { + const { plugins = [] } = options; + console.log('plugins', plugins); + return { + ...options, + plugins: [ + ...plugins, + ['@babel/plugin-proposal-class-properties', { loose: true }], + ], + }; + }); + }); config.performance.hints(false); }); }; diff --git a/packages/react-simulator-renderer/build.plugin.js b/packages/react-simulator-renderer/build.plugin.js index d613f1f56..1c8604e63 100644 --- a/packages/react-simulator-renderer/build.plugin.js +++ b/packages/react-simulator-renderer/build.plugin.js @@ -1,5 +1,24 @@ module.exports = ({ onGetWebpackConfig }) => { onGetWebpackConfig((config) => { + ['jsx', 'tsx'].forEach((rule) => { + config.module + .rule(rule) + .exclude.clear() + .add(/node_modules(?!(.+_component_demo|.+build-plugin-component))/) + .end() + .use('babel-loader') + .tap((options) => { + const { plugins = [] } = options; + console.log('plugins', plugins); + return { + ...options, + plugins: [ + ...plugins, + ['@babel/plugin-proposal-class-properties', { loose: true }], + ], + }; + }); + }); config.performance.hints(false); }); }; diff --git a/packages/workspace/src/base-context.ts b/packages/workspace/src/base-context.ts index 12151b5c1..daf97f35e 100644 --- a/packages/workspace/src/base-context.ts +++ b/packages/workspace/src/base-context.ts @@ -133,7 +133,7 @@ export class BasicContext { // 注册一批内置插件 this.registerInnerPlugins = async function registerPlugins() { await plugins.register(componentMetaParser(designer)); - await plugins.register(setterRegistry); + await plugins.register(setterRegistry, {}, { autoInit: true }); await plugins.register(defaultPanelRegistry(editor, designer)); await plugins.register(builtinHotkey); };