Skip to content

Commit 84d3b3e

Browse files
committed
Merge branch 'main' of github.com:ml-in-barcelona/server-reason-react
* 'main' of github.com:ml-in-barcelona/server-reason-react: Remove data-reactroot attr from ReactDom render_element (#129)
2 parents bc2d6d1 + 7bf4fc9 commit 84d3b3e

File tree

2 files changed

+6
-17
lines changed

2 files changed

+6
-17
lines changed

packages/reactDom/src/ReactDOM.ml

+2-9
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,6 @@ let attributes_to_string attrs =
6060
| [] -> ""
6161
| rest -> " " ^ (rest |> String.concat " " |> String.trim)
6262

63-
let react_root_attr_name = "data-reactroot"
64-
let data_react_root_attr = Printf.sprintf " %s=\"\"" react_root_attr_name
65-
6663
type mode = String | Markup
6764

6865
let render_to_string ~mode element =
@@ -74,9 +71,6 @@ let render_to_string ~mode element =
7471
<!-- --> between text nodes *)
7572
let previous_was_text_node = ref false in
7673
let rec render_element element =
77-
let root_attribute =
78-
match is_root.contents with true -> data_react_root_attr | false -> ""
79-
in
8074
match element with
8175
| Empty -> ""
8276
| Provider children -> render_element children
@@ -88,11 +82,10 @@ let render_to_string ~mode element =
8882
| Lower_case_element { tag; attributes; _ }
8983
when Html.is_self_closing_tag tag ->
9084
is_root.contents <- false;
91-
Printf.sprintf "<%s%s%s />" tag root_attribute
92-
(attributes_to_string attributes)
85+
Printf.sprintf "<%s%s />" tag (attributes_to_string attributes)
9386
| Lower_case_element { tag; attributes; children } ->
9487
is_root.contents <- false;
95-
Printf.sprintf "<%s%s%s>%s</%s>" tag root_attribute
88+
Printf.sprintf "<%s%s>%s</%s>" tag
9689
(attributes_to_string attributes)
9790
(children |> List.map render_element |> String.concat "")
9891
tag

packages/reactDom/test/test_renderToString.ml

+4-8
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,18 @@ let assert_string left right =
33

44
let react_root_one_element () =
55
let div = React.createElement "div" [] [] in
6-
assert_string (ReactDOM.renderToString div) "<div data-reactroot=\"\"></div>"
6+
assert_string (ReactDOM.renderToString div) "<div></div>"
77

88
let react_root_two_elements () =
99
let div = React.createElement "div" [] [ React.createElement "span" [] [] ] in
10-
assert_string
11-
(ReactDOM.renderToString div)
12-
"<div data-reactroot=\"\"><span></span></div>"
10+
assert_string (ReactDOM.renderToString div) "<div><span></span></div>"
1311

1412
let text_single_node () =
1513
let div =
1614
React.createElement "div" []
1715
[ React.createElement "span" [] [ React.string "Hello" ] ]
1816
in
19-
assert_string
20-
(ReactDOM.renderToString div)
21-
"<div data-reactroot=\"\"><span>Hello</span></div>"
17+
assert_string (ReactDOM.renderToString div) "<div><span>Hello</span></div>"
2218

2319
let consecutives_text_nodes () =
2420
let div =
@@ -30,7 +26,7 @@ let consecutives_text_nodes () =
3026
in
3127
assert_string
3228
(ReactDOM.renderToString div)
33-
"<div data-reactroot=\"\"><span>Hello<!-- -->Hello</span></div>"
29+
"<div><span>Hello<!-- -->Hello</span></div>"
3430

3531
let case title fn = Alcotest_lwt.test_case_sync title `Quick fn
3632

0 commit comments

Comments
 (0)