Article View: pl.comp.www
Article #408820Re: TypeScript - jak uzyskać zmienne prywatne? Gdzie korzyści z TS?
From: Roman Tyczka
Date: Thu, 05 Sep 2019 07:50
Date: Thu, 05 Sep 2019 07:50
51 lines
2629 bytes
2629 bytes
On Wed, 4 Sep 2019 22:11:10 +0200, Marek S wrote:
> abstract class Test {
> private _message: string;
>
> protected printMessage() {
> console.log(this._message);
> }
>
> protected constructor(message: string) {
> this._message = message;
>
> }
> }
>
> export default Test;
>
> *****************************************
>
> import Test from "./Test";
>
> class Test2 extends Test{
> private _message: string;
>
> constructor(message:string) {
> super("dupa");
> this._message = message;
> }
>
> execute() {
> console.log(this._message);
> this.printMessage();
> }
> }
>
> let demo = new Test2("my message");
> demo.execute();
>
> Zadeklarowałem _message jako zmienną prywatną w obu klasach i... powstał
> konflikt! Transkompilator nie poradził sobie z tym. Oczekiwałbym
> samoczynnej zmiany nazwy funkcji by w wyjściowym JS nie było konfliktów.
> Zatem jak żyć? :-) To samo dotyczy metod. Te prywatne zwalczają się
> zamiast być niezależnymi w każdej z klas.
Nie żabym się znał na TS, choć mam w planie nim się zająć, ale tak na
logikę to zastanawia mnie które _message wg Ciebie miałaby wziąć metoda
printMessage() wywołana z klasy Test2? Dla mnie to ewidentny konflikt.
--
pozdrawiam
Roman Tyczka
Technical Details
Message-ID:
<10aaekrsuhadf.dlg@tyczka.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder7.news.weretis.net!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.69.MISMATCH!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer04.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailReferences:
<qkp5ov$imf$1@news.icm.edu.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder7.news.weretis.net!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.69.MISMATCH!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer04.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail From: Roman Tyczka <noemail@because.no> Subject: Re: TypeScript - jak uzyskać zmienne prywatne? Gdzie korzyści z TS? Newsgroups: pl.comp.www User-Agent: 40tude_Dialog/2.0.15.84 MIME-Version: 1.0 Sender: romek@tyczka.no.found References: <qkp5ov$imf$1@news.icm.edu.pl> Date: Thu, 5 Sep 2019 09:50:15 +0200 Message-ID: <10aaekrsuhadf.dlg@tyczka.com> Lines: 51 Organization: Telekomunikacja Polska NNTP-Posting-Host: 94.75.90.137 X-Trace: 1567669815 unt-rea-b-01.news.neostrada.pl 31100 94.75.90.137:8158 X-Complaints-To: abuse@news.neostrada.pl X-Received-Bytes: 2333 X-Received-Body-CRC: 525995973 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit