It's simpler to add them into an object property and just bind to the object. I don't particularly like expression structures for simply monitoring a number of properties (which is the only way you really should be using them), since they're a bit frustrating to setup. They shouldn't have a default value, that just makes it more annoying as you have to select all and delete it before you add your expression / property binding. Minor gripe, but it slows down the whole process when there's no reason it should have to
I agree that it's annoying, but it's a small price to pay.
I'd rather remove a few default values than add clutter to my components by adding properties that are used only for that.
Adding separate properties is far better for troubleshooting though - I rarely don't use this method, otherwise troubleshooting expressions is a nightmare
Well I do use separate properties, which I bind to in a structure binding. Unless they're very simple expressions.
But that's one more reason not to have yet another property that's used solely for grouping the other ones to avoid structure bindings.
oh, I see what you mean now
I think it's the only way to bind to multiple queries anyway.
Do you just mean that they shouldn't have the "value"
expression prepopulated, and instead should start totally blank? Or something else?
Yes, frankly it would be much better without that "value"
.
Blank would be good.
I guess the downside there is this:
But then again, it's also a pretty clear error, so not the end of the world.
Could it be pre-selected so that it gets deleted with a single key-press or function insertion?
Are you expecting us to read error messages?
Ah, that's interesting. When you open an expression structure on an existing object, it doesn't pre-select anything, but when you create a brand new one it does auto-focus the key.
So given:
You want:
And maybe also if you click the fx?:
The infuriating part is that if you delete the "value" then click the fx
button, it comes back !
Alright, let's see if I've got the wishlist here:
- Don't default every value to the expression
"value"
- no content is fine, the error message is clear enough and it's annoying to click through and delete- When creating an expression structure binding from an existing object, ensure focus is passed into the first value in the structure, so users don't have to do extra clicking.
- When invoking the popup expression helper, ensure the entire existing text is selected, so it can be easily removed if not applicable.
- When invoking the popup expression helper, commit any pending updates in the 'raw' JsonEditor so that you don't have to remake any changes
I don't care about #2, but I believe any of the other 3 would solve the issue for me, particularly #1 and #3
when fx is clicked, only option is expression binding. Could it be possible include indirect binding as well..
That would be super neat, but it would bloat the UI I'm afraid.