# Where does a value get its "persistent" value from? How to update this?

**URL:** <https://forum.inductiveautomation.com/t/where-does-a-value-get-its-persistent-value-from-how-to-update-this/80127>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [October 6, 2023, 8:54am UTC](https://forum.inductiveautomation.com/t/where-does-a-value-get-its-persistent-value-from-how-to-update-this/80127 "2023-10-06T08:54:03Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Henry\_Neves-Charge](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/henry_neves-charge/32/41949_2.png) [@Henry\_Neves-Charge](https://forum.inductiveautomation.com/u/Henry_Neves-Charge)\
**Post date:** [October 6, 2023, 8:54am UTC](https://forum.inductiveautomation.com/t/where-does-a-value-get-its-persistent-value-from-how-to-update-this/80127/1 "2023-10-06T08:54:03Z")

</div>

I have a bunch of labels on a page which are bound to tags. When the view loads there's about a second of blank values while they get their values from their tags. This is quite jarring as the layout bounces.

I understand I can set these label values to "Persistent" - the issue with this is if the tag value has changed it will load a previous value and then the tag value. Which is also not desirable.

Is there some way to update this value into memory so that when the view loads it brings in the most recent tag value rather than the old persistent value?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [October 6, 2023, 12:20pm UTC](https://forum.inductiveautomation.com/t/where-does-a-value-get-its-persistent-value-from-how-to-update-this/80127/2 "2023-10-06T12:20:41Z")

</div>

That's the whole point of non-persistent. Show nothing until the binding value arrives. Persistent shows the last saved designer value until the binding value arrives.

There's no faster "memory" to work with--Perspective is **already** running inside the gateway where the true values live. You're just seeing the time between transferring the view config to the browser and then the browser asking for and getting the binding values. There's a fundamentally non-zero time where the browser renders the view before it can apply bindings. (Made worse by network latency, if any to speak of.)

{ Vision is different, because _Vision is different_. }

---

<div class="post-metadata">

**Author:** ![Henry\_Neves-Charge](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/henry_neves-charge/32/41949_2.png) [@Henry\_Neves-Charge](https://forum.inductiveautomation.com/u/Henry_Neves-Charge)\
**Post date:** [October 6, 2023, 12:52pm UTC](https://forum.inductiveautomation.com/t/where-does-a-value-get-its-persistent-value-from-how-to-update-this/80127/3 "2023-10-06T12:52:56Z")

</div>

Thanks for the reply @pturmel. I guess I'm just trying to get my head around "when" that value becomes the value it chooses to persist? Is it just whenever the designer was last saved? Is there some sort of way to force an update to that value?

It would also be good if we could store some of this stuff on the front-end through the use of local storage or similar? It seems like there's a lot of stuff that's constantly being re-rendered unnecessarily.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [October 6, 2023, 1:03pm UTC](https://forum.inductiveautomation.com/t/where-does-a-value-get-its-persistent-value-from-how-to-update-this/80127/4 "2023-10-06T13:03:03Z")

</div>

> [@Henry\_Neves-Charge](#):
>
> Is it just whenever the designer was last saved?

Yes.

> [@Henry\_Neves-Charge](#):
>
> force an update to that value?

Write directly to the project's JSON files in the gateway filesystem. (Ugly.)

> [@Henry\_Neves-Charge](#):
>
> on the front-end

Mwah-ha-ha-ha-ha! Get in line!

---

<div class="post-metadata">

**Author:** ![Felipe\_CRM](https://avatars.discourse-cdn.com/v4/letter/f/dfb087/32.png) [@Felipe\_CRM](https://forum.inductiveautomation.com/u/Felipe_CRM)\
**Post date:** [October 6, 2023, 1:27pm UTC](https://forum.inductiveautomation.com/t/where-does-a-value-get-its-persistent-value-from-how-to-update-this/80127/5 "2023-10-06T13:27:35Z")

</div>

> [@Henry\_Neves-Charge](#):
>
> force an update to that value?

> [@pturmel](#):
>
> (Ugly.)

Not to mention that persistent value is used for all clients, so last client would win and the others would have a wrong last value. Client-side is really the only way for this to happen

Is using custom JS injected to read/write local storage anywhere within possibility? It would probably clash with the whole binding mechanism somehow.
