Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitd19c210

Browse files
fix rerendering apps in sdk
1 parent9d0cab1 commitd19c210

File tree

4 files changed

+10
-7
lines changed

4 files changed

+10
-7
lines changed

‎client/packages/lowcoder-sdk/index.tsx‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import{useRef}from"react";
22
importReactDOM,{flushSync}from"react-dom";
3+
import{createRoot}from"react-dom/client";
34
import{AppViewInstance,bootstrapAppAt,LowcoderAppView}from"./src/index";
45

56
consturl=newURL(location.href);
@@ -70,7 +71,9 @@ async function bootstrap() {
7071
});
7172

7273
// React
73-
ReactDOM.render(<ReactDemoApp/>,document.querySelector("#app2"));
74+
constcontainer=document.querySelector("#app2");
75+
constroot=createRoot(container!);
76+
root.render(<ReactDemoApp/>);
7477
}
7578

7679
bootstrap();

‎client/packages/lowcoder-sdk/package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name":"lowcoder-sdk",
3-
"version":"2.3.0",
3+
"version":"2.3.1",
44
"type":"module",
55
"files": [
66
"src",

‎client/packages/lowcoder/src/appView/AppViewInstance.tsx‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { RootComp } from "comps/comps/rootComp";
44
import{setGlobalSettings}from"comps/utils/globalSettings";
55
import{sdkConfig}from"constants/sdkConfig";
66
import_from"lodash";
7-
import{createRoot}from"react-dom/client";
7+
import{Root}from"react-dom/client";
88
import{StyleSheetManager}from"styled-components";
99
import{ModuleDSL,ModuleDSLIoInput}from"types/dsl";
1010
import{AppView}from"./AppView";
@@ -40,7 +40,7 @@ export class AppViewInstance<I = any, O = any> {
4040
webUrl:"https://app.lowcoder.cloud",
4141
};
4242

43-
constructor(privateappId:string,privatenode:Element,options:AppViewInstanceOptions={}){
43+
constructor(privateappId:string,privatenode:Element,privateroot:Root,options:AppViewInstanceOptions={}){
4444
Object.assign(this.options,options);
4545
if(this.options.baseUrl){
4646
sdkConfig.baseURL=this.options.baseUrl;
@@ -137,8 +137,7 @@ export class AppViewInstance<I = any, O = any> {
137137

138138
privateasyncrender(){
139139
constdata=awaitthis.dataPromise;
140-
constroot=createRoot(this.node);
141-
root.render(
140+
this.root.render(
142141
<StyleSheetManagertarget={this.nodeasHTMLElement}>
143142
<AppView
144143
appId={this.appId}

‎client/packages/lowcoder/src/appView/bootstrapAt.tsx‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import{loadComps}from"comps";
22
import{AppViewInstance,AppViewInstanceOptions}from"./AppViewInstance";
3+
import{createRoot}from"react-dom/client";
34

45
loadComps();
56

@@ -12,5 +13,5 @@ export async function bootstrapAppAt<I>(
1213
console.error("node must be not null.");
1314
return;
1415
}
15-
returnnewAppViewInstance(appId,node,options);
16+
returnnewAppViewInstance(appId,node,createRoot(node),options);
1617
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp