mirror of
https://github.com/chartjs/Chart.js.git
synced 2024-10-06 12:19:08 +02:00
Fix resolver caching issue when setting values (#9938)
This commit is contained in:
parent
688cd470e9
commit
db995af158
@ -76,8 +76,7 @@ export function _createResolver(scopes, prefixes = [''], rootScopes = scopes, fa
|
||||
*/
|
||||
set(target, prop, value) {
|
||||
const storage = target._storage || (target._storage = getTarget());
|
||||
storage[prop] = value; // set to top level scope
|
||||
delete target[prop]; // remove from cache
|
||||
target[prop] = storage[prop] = value; // set to top level scope + cache
|
||||
delete target._keys; // remove cached keys
|
||||
return true;
|
||||
}
|
||||
|
@ -492,6 +492,7 @@ describe('Chart.helpers.config', function() {
|
||||
resolver.value = false;
|
||||
expect(options.value).toBeFalse();
|
||||
expect(defaults.value).toBeTrue();
|
||||
expect(resolver.value).toBeFalse();
|
||||
});
|
||||
|
||||
it('should set values of sub-objects to first scope', function() {
|
||||
@ -505,6 +506,7 @@ describe('Chart.helpers.config', function() {
|
||||
resolver.sub.value = false;
|
||||
expect(options.sub.value).toBeFalse();
|
||||
expect(defaults.sub.value).toBeTrue();
|
||||
expect(resolver.sub.value).toBeFalse();
|
||||
});
|
||||
|
||||
it('should throw when setting a value and options is frozen', function() {
|
||||
|
Loading…
Reference in New Issue
Block a user