vue-set-value

Vue.set with dot notation support (`'a.b.c'`) paths.

Usage no npm install needed!

<script type="module">
  import vueSetValue from 'https://cdn.skypack.dev/vue-set-value';
</script>

README

vue-set-value

Create nested values and any intermediaries on vue reactive objects using dot notation ('a.b.c') paths.

This project is only fork of great package set-value made by Jon Schlinkert

Install

Install with npm:

$ npm install --save vue-set-value

Usage

var vueDeepSet = require('vue-set-value');
vueDeepSet(object, prop, value);

Params

  • object {object}: The object to set value on
  • prop {string}: The property to set. Dot-notation may be used.
  • value {any}: The value to set on object[prop]

Examples

Updates and returns the given object:

vueDeepSet(target, 'a.b.c', 'd');
console.log(target);
//=> { a: { b: { c: 'd' } } }

Escaping

Escaping with backslashes

Prevent set-value from splitting on a dot by prefixing it with backslashes:

console.log(vueDeepSet(target, 'a\\.b.c', 'd'));
//=> { 'a.b': { c: 'd' } }

console.log(vueDeepSet(target, 'a\\.b\\.c', 'd'));
//=> { 'a.b.c': 'd' }

License

Copyright © 2018, Yaroslav Dobzhanskij. Copyright © 2018, Jon Schlinkert. Released under the MIT License.