From a3adabc9eddf8ecd6270333e4861fbb11044350f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andre=CC=81=20Rivet?= Date: Fri, 15 Mar 2019 09:47:16 -0400 Subject: [PATCH 1/2] update set props comments --- .../{{cookiecutter.component_name}}.react.js | 28 ++++++------------- 1 file changed, 9 insertions(+), 19 deletions(-) diff --git a/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js b/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js index bb0f989..26aad3f 100644 --- a/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js +++ b/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js @@ -17,28 +17,18 @@ export default class {{cookiecutter.component_name}} extends Component { ExampleComponent: {label}  { + onChange={ /* * Send the new value to the parent component. - # setProps is a prop that is automatically supplied + * setProps is a prop that is automatically supplied * by dash's front-end ("dash-renderer"). - * In a Dash app, this will send the data back to the - * Python Dash app server. - * If the component properties are not "subscribed" - * to by a Dash callback, then Dash dash-renderer - * will not pass through `setProps` and it is expected - * that the component manages its own state. + * In a Dash app, this will update the component's + * props and send the data back to the Python Dash + * app server if a callback uses the modified prop as + * Input or State. */ - if (setProps) { - setProps({ - value: e.target.value - }); - } else { - this.setState({ - value: e.target.value - }) - } - }} + e => setProps({ value: e.target.value }) + } /> ); @@ -67,5 +57,5 @@ export default class {{cookiecutter.component_name}} extends Component { * Dash-assigned callback that should be called whenever any of the * properties change */ - setProps: PropTypes.func + setProps: PropTypes.func.isRequired }; From b76b78389c531d0fb87a41c543ba463b578ab63f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andre=CC=81=20Rivet?= Date: Fri, 15 Mar 2019 10:01:53 -0400 Subject: [PATCH 2/2] isRequired --- .../src/lib/components/{{cookiecutter.component_name}}.react.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js b/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js index 26aad3f..4bc0731 100644 --- a/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js +++ b/{{cookiecutter.project_shortname}}/src/lib/components/{{cookiecutter.component_name}}.react.js @@ -57,5 +57,5 @@ export default class {{cookiecutter.component_name}} extends Component { * Dash-assigned callback that should be called whenever any of the * properties change */ - setProps: PropTypes.func.isRequired + setProps: PropTypes.func };