binaryage / cljs-oops

ClojureScript macros for convenient native Javascript object access.
Other
351 stars 13 forks source link

oset being strict #30

Open wilkerlucio opened 3 years ago

wilkerlucio commented 3 years ago

Hello,

I'm trying to use oops to interop with Automerge.

This snippet fails to make an update:

(oset+ doc "todos" (str idx) "done" true)

The browser complaints that: data property descriptor has writable=false

But if I try something a bit different:

(gobj/set (oget+ doc "todos" (str idx)) "done" done)

This works just fine, the google impl is a single obj[key] = value. I wonder if there is a way to make oops work directly without having to fall back into Closure helpers.