In JavaScript gefällt mir die Benennungskonvention von PascalCase für Konstruktorfunktionen und camelCase für andere Funktionen. Es scheint, dass ReSharper für diese Einstellungen konfiguriert ist. Für Code wie diesen jedoch:
%Vor%... Ich erhalte diese Warnung:
Name 'Thing' stimmt nicht mit der Regel 'Lokale Funktion' überein. Vorgeschlagener Name ist "Sache".
Es macht keinen Unterschied, wenn ich Thing
auf Folgendes ändere:
Ich vermute, dass nur "öffentliche" Funktionen als Konstruktoren betrachtet werden. Weiß jemand von Ihnen, wie ReSharper zwischen einer "Local" - und einer "Constructor" -Funktion unterscheidet? Noch besser, weißt du, wie man dieses Verhalten überschreibt?
Wenn Sie möchten, dass Ihr Konstruktor öffentlich ist, können Sie diese Problemumgehung verwenden:
%Vor%Oder wenn Sie nicht möchten, dass sich Nachschärfer über "ThisInGlobalContext" beschwert:
%Vor%Bearbeiten
Da Ihre Klasse lokal sein muss, können Sie ein lokales Objekt verwenden, um den lokalen Konstruktor zu "speichern". Aber das ist wirklich nur ein Hack, um Resharper auszuschalten ...
%Vor%Tags und Links javascript resharper naming-conventions