ReactJS, React-Router: Calling parent function2019 Community Moderator ElectionLoop inside React JSXUnderstanding unique keys for array children in React.jsProgrammatically navigate using react routerReact-Router - Pass Method to Child ComponentPassing custom props to router component in react-router v4How to render NotFound Component react-router-configReactJs Router Duplicates itself when wrap it in componentreact-router pass previous routes props to sub routeReact-router Pass DataReact Router and TypeScript Implementation
Where do you go through passport control when transiting through another Schengen airport on your way out of the Schengen area?
Is "cogitate" an appropriate word for this?
Naming Characters after Friends/Family
The need of reserving one's ability in job interviews
What's the difference between Compensation, Indemnity, and Reparations?
Is there such a thing in math the inverse of a sequence?
Quitting employee has privileged access to critical information
Error in TransformedField
Is there a way to find out the age of climbing ropes?
Is it a Cyclops number? "Nobody" knows!
Can a Mimic (container form) actually hold loot?
What does "rhumatis" mean?
Why do phishing e-mails use faked e-mail addresses instead of the real one?
Under what conditions would I NOT add my Proficiency Bonus to a Spell Attack Roll (or Saving Throw DC)?
Should I use HTTPS on a domain that will only be used for redirection?
Different Account page layouts, what are they?
An Undercover Army
In the world of The Matrix, what is "popping"?
Sundering Titan and basic normal lands and snow lands
What is "desert glass" and what does it do to the PCs?
Too soon for a plot twist?
Why is there an extra space when I type "ls" on the Desktop?
Using the imperfect indicative vs. subjunctive with si
Do natural melee weapons (from racial traits) trigger Improved Divine Smite?
ReactJS, React-Router: Calling parent function
2019 Community Moderator ElectionLoop inside React JSXUnderstanding unique keys for array children in React.jsProgrammatically navigate using react routerReact-Router - Pass Method to Child ComponentPassing custom props to router component in react-router v4How to render NotFound Component react-router-configReactJs Router Duplicates itself when wrap it in componentreact-router pass previous routes props to sub routeReact-router Pass DataReact Router and TypeScript Implementation
I am working on a React App, trying to call a parent method from a child component, some code of the parent component below:
class NavigationBar extends Component
constructor(props)
super(props);
this.state=isLoggedIn: false;
updateLoginState()
alert("Login from NavigationBar");
GetBar()
//const isLoggedIn = this.props.isLoggedIn;
if (false) //isLoggedIn
return this.UserNavBar();
return this.StrangerNavBar();
StrangerNavBar()
return (
<div>
<HashRouter>
<div>
/* ... */
<div className="content">
<Route exact path="/LoginCC" loginUpdate=this.updateLoginState component=LoginCC />
</div>
</div>
</HashRouter>
</div>
);
render()
return (
this.GetBar()
);
export default NavigationBar;
This component is supposed to redirect the user to different content pages based on whether or not he is logged in, using a Router
. If a button is clicked in LoginCC.js
the method updateLoginState
should be invoked which just displays a message for now. The child content page LoginCC.js
looks as follows:
class LoginCC extends Component
constructor(props)
super(props);
this.state = isLoggedIn: false;
render()
return (
<div>
<HashRouter>
/* ... */
<Button variant="primary" size="lg" block onClick=this.props.loginUpdate>
Log in
</Button>
/* ... */
</HashRouter>
</div>
);
export default LoginCC;
I passed the method reference as a prop to LoginCC
when rendering this component using the Router
, so a message should pop up if I press the button, but nothing happens.
Am I passing the prop incorrectly or something else I've missed? I'm new to React so any help is appreciated.
reactjs react-router
add a comment |
I am working on a React App, trying to call a parent method from a child component, some code of the parent component below:
class NavigationBar extends Component
constructor(props)
super(props);
this.state=isLoggedIn: false;
updateLoginState()
alert("Login from NavigationBar");
GetBar()
//const isLoggedIn = this.props.isLoggedIn;
if (false) //isLoggedIn
return this.UserNavBar();
return this.StrangerNavBar();
StrangerNavBar()
return (
<div>
<HashRouter>
<div>
/* ... */
<div className="content">
<Route exact path="/LoginCC" loginUpdate=this.updateLoginState component=LoginCC />
</div>
</div>
</HashRouter>
</div>
);
render()
return (
this.GetBar()
);
export default NavigationBar;
This component is supposed to redirect the user to different content pages based on whether or not he is logged in, using a Router
. If a button is clicked in LoginCC.js
the method updateLoginState
should be invoked which just displays a message for now. The child content page LoginCC.js
looks as follows:
class LoginCC extends Component
constructor(props)
super(props);
this.state = isLoggedIn: false;
render()
return (
<div>
<HashRouter>
/* ... */
<Button variant="primary" size="lg" block onClick=this.props.loginUpdate>
Log in
</Button>
/* ... */
</HashRouter>
</div>
);
export default LoginCC;
I passed the method reference as a prop to LoginCC
when rendering this component using the Router
, so a message should pop up if I press the button, but nothing happens.
Am I passing the prop incorrectly or something else I've missed? I'm new to React so any help is appreciated.
reactjs react-router
add a comment |
I am working on a React App, trying to call a parent method from a child component, some code of the parent component below:
class NavigationBar extends Component
constructor(props)
super(props);
this.state=isLoggedIn: false;
updateLoginState()
alert("Login from NavigationBar");
GetBar()
//const isLoggedIn = this.props.isLoggedIn;
if (false) //isLoggedIn
return this.UserNavBar();
return this.StrangerNavBar();
StrangerNavBar()
return (
<div>
<HashRouter>
<div>
/* ... */
<div className="content">
<Route exact path="/LoginCC" loginUpdate=this.updateLoginState component=LoginCC />
</div>
</div>
</HashRouter>
</div>
);
render()
return (
this.GetBar()
);
export default NavigationBar;
This component is supposed to redirect the user to different content pages based on whether or not he is logged in, using a Router
. If a button is clicked in LoginCC.js
the method updateLoginState
should be invoked which just displays a message for now. The child content page LoginCC.js
looks as follows:
class LoginCC extends Component
constructor(props)
super(props);
this.state = isLoggedIn: false;
render()
return (
<div>
<HashRouter>
/* ... */
<Button variant="primary" size="lg" block onClick=this.props.loginUpdate>
Log in
</Button>
/* ... */
</HashRouter>
</div>
);
export default LoginCC;
I passed the method reference as a prop to LoginCC
when rendering this component using the Router
, so a message should pop up if I press the button, but nothing happens.
Am I passing the prop incorrectly or something else I've missed? I'm new to React so any help is appreciated.
reactjs react-router
I am working on a React App, trying to call a parent method from a child component, some code of the parent component below:
class NavigationBar extends Component
constructor(props)
super(props);
this.state=isLoggedIn: false;
updateLoginState()
alert("Login from NavigationBar");
GetBar()
//const isLoggedIn = this.props.isLoggedIn;
if (false) //isLoggedIn
return this.UserNavBar();
return this.StrangerNavBar();
StrangerNavBar()
return (
<div>
<HashRouter>
<div>
/* ... */
<div className="content">
<Route exact path="/LoginCC" loginUpdate=this.updateLoginState component=LoginCC />
</div>
</div>
</HashRouter>
</div>
);
render()
return (
this.GetBar()
);
export default NavigationBar;
This component is supposed to redirect the user to different content pages based on whether or not he is logged in, using a Router
. If a button is clicked in LoginCC.js
the method updateLoginState
should be invoked which just displays a message for now. The child content page LoginCC.js
looks as follows:
class LoginCC extends Component
constructor(props)
super(props);
this.state = isLoggedIn: false;
render()
return (
<div>
<HashRouter>
/* ... */
<Button variant="primary" size="lg" block onClick=this.props.loginUpdate>
Log in
</Button>
/* ... */
</HashRouter>
</div>
);
export default LoginCC;
I passed the method reference as a prop to LoginCC
when rendering this component using the Router
, so a message should pop up if I press the button, but nothing happens.
Am I passing the prop incorrectly or something else I've missed? I'm new to React so any help is appreciated.
reactjs react-router
reactjs react-router
asked yesterday
Fabian WiteczekFabian Witeczek
84
84
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Route
doesn't pass any custom props to components. You should use other method to pass functions.
One of solutions is:
<Route exact path="/LoginCC" render=
props => <LoginCC ...props loginUpdate=this.updateLoginState/>
/>
Note that updateLoginState
will not get this
when called. You should either bind
it or declare it as an arrow function to get the correct this
.
Also check the Context documentation.
That solved my problem. Thanks for the solution and pointer! :)
– Fabian Witeczek
yesterday
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55023291%2freactjs-react-router-calling-parent-function%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Route
doesn't pass any custom props to components. You should use other method to pass functions.
One of solutions is:
<Route exact path="/LoginCC" render=
props => <LoginCC ...props loginUpdate=this.updateLoginState/>
/>
Note that updateLoginState
will not get this
when called. You should either bind
it or declare it as an arrow function to get the correct this
.
Also check the Context documentation.
That solved my problem. Thanks for the solution and pointer! :)
– Fabian Witeczek
yesterday
add a comment |
Route
doesn't pass any custom props to components. You should use other method to pass functions.
One of solutions is:
<Route exact path="/LoginCC" render=
props => <LoginCC ...props loginUpdate=this.updateLoginState/>
/>
Note that updateLoginState
will not get this
when called. You should either bind
it or declare it as an arrow function to get the correct this
.
Also check the Context documentation.
That solved my problem. Thanks for the solution and pointer! :)
– Fabian Witeczek
yesterday
add a comment |
Route
doesn't pass any custom props to components. You should use other method to pass functions.
One of solutions is:
<Route exact path="/LoginCC" render=
props => <LoginCC ...props loginUpdate=this.updateLoginState/>
/>
Note that updateLoginState
will not get this
when called. You should either bind
it or declare it as an arrow function to get the correct this
.
Also check the Context documentation.
Route
doesn't pass any custom props to components. You should use other method to pass functions.
One of solutions is:
<Route exact path="/LoginCC" render=
props => <LoginCC ...props loginUpdate=this.updateLoginState/>
/>
Note that updateLoginState
will not get this
when called. You should either bind
it or declare it as an arrow function to get the correct this
.
Also check the Context documentation.
answered yesterday
UjinT34UjinT34
73910
73910
That solved my problem. Thanks for the solution and pointer! :)
– Fabian Witeczek
yesterday
add a comment |
That solved my problem. Thanks for the solution and pointer! :)
– Fabian Witeczek
yesterday
That solved my problem. Thanks for the solution and pointer! :)
– Fabian Witeczek
yesterday
That solved my problem. Thanks for the solution and pointer! :)
– Fabian Witeczek
yesterday
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55023291%2freactjs-react-router-calling-parent-function%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown