diff --git a/src/components/CodeEditor/CodeEditor.js b/src/components/CodeEditor/CodeEditor.js
index 28e1a2098..9c1aab34e 100644
--- a/src/components/CodeEditor/CodeEditor.js
+++ b/src/components/CodeEditor/CodeEditor.js
@@ -35,8 +35,12 @@ class CodeEditor extends Component {
componentDidUpdate(prevProps, prevState) {
if (prevState.compiled !== this.state.compiled) {
this._render();
- } else if (this.props.code !== prevProps.code) {
- this.setState(this._updateState(this.props.code));
+ }
+ }
+
+ UNSAFE_componentWillReceiveProps(nextProps) {
+ if (this.props.code !== nextProps.code) {
+ this.setState(this._updateState(nextProps.code));
}
}
@@ -67,179 +71,174 @@ class CodeEditor extends Component {
}
return (
-
-
+
+
+
+ Live JSX Editor
+
+
+
+
+
+
+
+ {error && (
+
-
- Live JSX Editor
-
-
-
-
-
-
-
- {error && (
-
-
-
- Error
-
-
-
- {errorMessage}
-
+ Error
+
- )}
- {!error && (
+
+ {errorMessage}
+
+
+ )}
+ {!error && (
+
-
-
+
+
+ )}
+
+
);
}
diff --git a/src/components/CodeExample/CodeExample.js b/src/components/CodeExample/CodeExample.js
index 2ee9fb977..31fe7e2c6 100644
--- a/src/components/CodeExample/CodeExample.js
+++ b/src/components/CodeExample/CodeExample.js
@@ -6,15 +6,21 @@ import CodeEditor from '../CodeEditor/CodeEditor';
class CodeExample extends Component {
render() {
- const {children, code, loaded} = this.props;
+ const {children, code, id, loaded} = this.props;
return (
{
- lookup[node.mdAbsolutePath] = node.code;
+ lookup[node.mdAbsolutePath] = node;
return lookup;
}, {});
@@ -257,15 +257,19 @@ class Home extends Component {
/>
- {examples.edges.map(({node}, index) => (
-
- {node.frontmatter.title}
-
-
- ))}
+ {examples.edges.map(({node}, index) => {
+ const snippet = code[node.fileAbsolutePath];
+ return (
+
+ {node.frontmatter.title}
+
+
+ );
+ })}