Magic strings everywhere ? Ugh... A few more arguments for constants:
1. Autocomplete
2. Autodocumentation (basically having a list of available actions by ctrl+spacing)
3. Namespacing actions (ADD.EVENT.SUCCESS instead of "ADD_EVENT_SUCCESS")
4. Minification. It's easier to mangle constant references than magic strings
The goal is to evaluate the function with a runtime condition, so that prepack is forced to keep the dynamic evaluation. This can be done with Math.random() or +(new Date()) or many environment properties, but none of them are supported by Prepack. Any runtime-dependent expression throws an IntrospectionError:
console.log(Date[Math.random() > 0 ? "now" : "nope"]())
There is no mention of computed properties in the docs, should we use getter for that ? It seems to work: http://jsbin.com/vihawiziza/edit?html,css,js,output
I really like getters/setters or proxy interfaces for data handling, it has several benefits regarding autocompletion, type checking and the handling of specific mutations like array splice. This is what sold me with Vue in the first place
No, I disagree. Higher Order Components is an abstract concept which can be formalized in different ways as we saw earlier. It relies on the functional nature of components, and so is suitable for both Vue and React, among others.
I gave you a clean and elegant solution in Vue for each of your concerns, yet you decide to camp on your positions rather than admit that you may have a few things to learn about Vue. Too bad, but I cannot help you on this.