Formik FieldArray not rerendering on updated values even with enableReinitialize2019 Community Moderator ElectionCan you force a React component to rerender without calling setState?Updating Child Component Via Change of Props from Parent in ReactReactJS: Best way to check state values and update render based on state?Formik FieldArray - dynamically generate nameapollo client cache updates but ui does notFormik FieldArrayReact Component Function Comparisonreact-virutalized AutoSizer rerender issueSet default value Field Array in FormikReact setState doesn't rerender on mobile only?
Does Mathematica reuse previous computations?
Gravity magic - How does it work?
Why did it take so long to abandon sail after steamships were demonstrated?
What exactly is this small puffer fish doing and how did it manage to accomplish such a feat?
My adviser wants to be the first author
Time travel from stationary position?
How could a scammer know the apps on my phone / iTunes account?
Is it normal that my co-workers at a fitness company criticize my food choices?
What did Alexander Pope mean by "Expletives their feeble Aid do join"?
Why doesn't using two cd commands in bash script execute the second command?
Why Choose Less Effective Armour Types?
Co-worker team leader wants to inject his friend's awful software into our development. What should I say to our common boss?
How do anti-virus programs start at Windows boot?
How to deal with taxi scam when on vacation?
What do Xenomorphs eat in the Alien series?
What is the significance behind "40 days" that often appears in the Bible?
How to deal with a cynical class?
How do I hide Chekhov's Gun?
Employee lack of ownership
How to create the Curved texte?
Brexit - No Deal Rejection
It's a yearly task, alright
Python if-else code style for reduced code for rounding floats
Professor being mistaken for a grad student
Formik FieldArray not rerendering on updated values even with enableReinitialize
2019 Community Moderator ElectionCan you force a React component to rerender without calling setState?Updating Child Component Via Change of Props from Parent in ReactReactJS: Best way to check state values and update render based on state?Formik FieldArray - dynamically generate nameapollo client cache updates but ui does notFormik FieldArrayReact Component Function Comparisonreact-virutalized AutoSizer rerender issueSet default value Field Array in FormikReact setState doesn't rerender on mobile only?
Formik enableReinitialize documentation
Default is false. Control whether Formik should reset the form if initialValues changes (using deep equality).
I'm passing in an object (through props) that I set in
initialValues, the object definition is:
"shoppingList":
"title": "",
"items": [ "quantity": 0, description: "" ]
I'm using this in a Formik FieldArray component. I'm updating the quantity in a button onClick handler using an inline arrow function that directly mutates the item via current element param in items.#map
callback.
Formik is not rerendering the form to reflect the updated quantity. Formik knows about the quantity as when I submit the form the component storing quantity is rerendered to the correct updated quantity.
reactjs formik
add a comment |
Formik enableReinitialize documentation
Default is false. Control whether Formik should reset the form if initialValues changes (using deep equality).
I'm passing in an object (through props) that I set in
initialValues, the object definition is:
"shoppingList":
"title": "",
"items": [ "quantity": 0, description: "" ]
I'm using this in a Formik FieldArray component. I'm updating the quantity in a button onClick handler using an inline arrow function that directly mutates the item via current element param in items.#map
callback.
Formik is not rerendering the form to reflect the updated quantity. Formik knows about the quantity as when I submit the form the component storing quantity is rerendered to the correct updated quantity.
reactjs formik
add a comment |
Formik enableReinitialize documentation
Default is false. Control whether Formik should reset the form if initialValues changes (using deep equality).
I'm passing in an object (through props) that I set in
initialValues, the object definition is:
"shoppingList":
"title": "",
"items": [ "quantity": 0, description: "" ]
I'm using this in a Formik FieldArray component. I'm updating the quantity in a button onClick handler using an inline arrow function that directly mutates the item via current element param in items.#map
callback.
Formik is not rerendering the form to reflect the updated quantity. Formik knows about the quantity as when I submit the form the component storing quantity is rerendered to the correct updated quantity.
reactjs formik
Formik enableReinitialize documentation
Default is false. Control whether Formik should reset the form if initialValues changes (using deep equality).
I'm passing in an object (through props) that I set in
initialValues, the object definition is:
"shoppingList":
"title": "",
"items": [ "quantity": 0, description: "" ]
I'm using this in a Formik FieldArray component. I'm updating the quantity in a button onClick handler using an inline arrow function that directly mutates the item via current element param in items.#map
callback.
Formik is not rerendering the form to reflect the updated quantity. Formik knows about the quantity as when I submit the form the component storing quantity is rerendered to the correct updated quantity.
reactjs formik
reactjs formik
edited Mar 6 at 19:49
Gibrahh
asked Mar 6 at 19:18
GibrahhGibrahh
63
63
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Fixed by using arrayHelpers.#replace
instead of directly updating the items.
arrayHelpers documentation
The answer is deep equality is value based. I'm unsure whether the term deep equality is ever valid in respect to reference based equality, but my confusion led to me asking that way anyway.
Either directly mutating the data in an item object in the array or immutably updating works as expected in this case. Unsure whether this would be different if the data I was updating was not primitive - still fairly new to the wonderfully scary world of JS.
In this case also works with enableReinitialize or without.
Full working example here, both mutating and immutable update logic used (one for minus quantity, other for plus quantity):
https://codesandbox.io/s/k2wzk9q605?fontsize=14
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%2f55030653%2fformik-fieldarray-not-rerendering-on-updated-values-even-with-enablereinitialize%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
Fixed by using arrayHelpers.#replace
instead of directly updating the items.
arrayHelpers documentation
The answer is deep equality is value based. I'm unsure whether the term deep equality is ever valid in respect to reference based equality, but my confusion led to me asking that way anyway.
Either directly mutating the data in an item object in the array or immutably updating works as expected in this case. Unsure whether this would be different if the data I was updating was not primitive - still fairly new to the wonderfully scary world of JS.
In this case also works with enableReinitialize or without.
Full working example here, both mutating and immutable update logic used (one for minus quantity, other for plus quantity):
https://codesandbox.io/s/k2wzk9q605?fontsize=14
add a comment |
Fixed by using arrayHelpers.#replace
instead of directly updating the items.
arrayHelpers documentation
The answer is deep equality is value based. I'm unsure whether the term deep equality is ever valid in respect to reference based equality, but my confusion led to me asking that way anyway.
Either directly mutating the data in an item object in the array or immutably updating works as expected in this case. Unsure whether this would be different if the data I was updating was not primitive - still fairly new to the wonderfully scary world of JS.
In this case also works with enableReinitialize or without.
Full working example here, both mutating and immutable update logic used (one for minus quantity, other for plus quantity):
https://codesandbox.io/s/k2wzk9q605?fontsize=14
add a comment |
Fixed by using arrayHelpers.#replace
instead of directly updating the items.
arrayHelpers documentation
The answer is deep equality is value based. I'm unsure whether the term deep equality is ever valid in respect to reference based equality, but my confusion led to me asking that way anyway.
Either directly mutating the data in an item object in the array or immutably updating works as expected in this case. Unsure whether this would be different if the data I was updating was not primitive - still fairly new to the wonderfully scary world of JS.
In this case also works with enableReinitialize or without.
Full working example here, both mutating and immutable update logic used (one for minus quantity, other for plus quantity):
https://codesandbox.io/s/k2wzk9q605?fontsize=14
Fixed by using arrayHelpers.#replace
instead of directly updating the items.
arrayHelpers documentation
The answer is deep equality is value based. I'm unsure whether the term deep equality is ever valid in respect to reference based equality, but my confusion led to me asking that way anyway.
Either directly mutating the data in an item object in the array or immutably updating works as expected in this case. Unsure whether this would be different if the data I was updating was not primitive - still fairly new to the wonderfully scary world of JS.
In this case also works with enableReinitialize or without.
Full working example here, both mutating and immutable update logic used (one for minus quantity, other for plus quantity):
https://codesandbox.io/s/k2wzk9q605?fontsize=14
edited Mar 6 at 21:25
answered Mar 6 at 21:16
GibrahhGibrahh
63
63
add a comment |
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%2f55030653%2fformik-fieldarray-not-rerendering-on-updated-values-even-with-enablereinitialize%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