You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In flyovers port, almost all members have been made public. Probably due to TypeScript not having a "friend" concept as C++ does.
This should be avoided. Possible alternatives:
Using the respective getter/setter methods
Introducing actual getter/setter (language feature)
Accessing private attributes using the bracket syntax, which bypasses the protection:
classA{privatex=0;}consta=newA();a["x"]=10;// no error
This style should only be used as a last resort internally to imitate the "friend" concept of C++.
I usually only use this in tests, where I want to access/modify data, which is otherwise not allowed to be touched.
Update: After trying this a bit, it causes other issues. Like false detection of unused properties (property is only being written, not being read)
Update 2:
As said in the comments, I've written idtsc to get this working. The core project has been extended with this technique. The other projects might need adjustments as well.
Projects to adjust:
controllers
core
lights
particles
The text was updated successfully, but these errors were encountered:
Another option would be the internal modifier, which has been a suggestion for quite a while: microsoft/TypeScript#5228
But since it's not implemented yet, an alternative approach would be to add a jsdoc tag, which can then later be used to post-process the generated .d.ts files to turn public into private
In flyovers port, almost all members have been made public. Probably due to TypeScript not having a "friend" concept as C++ does.
This should be avoided. Possible alternatives:
This style should only be used as a last resort internally to imitate the "friend" concept of C++.
I usually only use this in tests, where I want to access/modify data, which is otherwise not allowed to be touched.
Update: After trying this a bit, it causes other issues. Like false detection of unused properties (property is only being written, not being read)
Update 2:
As said in the comments, I've written idtsc to get this working. The core project has been extended with this technique. The other projects might need adjustments as well.
Projects to adjust:
The text was updated successfully, but these errors were encountered: