Piszę aplikację internetową angularjs (v1.5), więc mam kilka kontrolerów, aw tych kontrolerów Często jestem deklarując coś takiego:Jak wyłączyć ostrzeżenia o "tym" i trybie ścisłym przy użyciu JSHint?
function myController($someDirectives, ...){
var ctrl = this;
// My code
}
Rzecz kiedy JSHint mój kod, otrzymuję ten komunikat ostrzegawczy dla wszystkich moich "to" zadeklarowanych w kontrolerach:
Jeśli funkcja trybu ścisłego jest wykonywana za pomocą wywołania funkcji, jej "ta" wartość będzie niezdefiniowana.
Muszę sprecyzować, że w moim pliku .jshintrc ustawiłem "strict":false
. Czy ktoś wie, jak wyłączyć tę wiadomość w szczególności?
Z góry dziękuję.
nie jestem w stanie przetestować, ale myślę, że w przypadku zmiany nazwy funkcji do MyController, jest następnie uznany jako funkcja konstruktora i że błąd ten nie zostanie podany. Daj temu szansę. – Ken
Mam ten sam problem. W danym przypadku funkcja rekursywna jest przekazywana "this" przez functionName.call. –
Rzeczywiście, sugestia Kena wydaje się działać. Dla mnie prostsze jest dodanie '" validthis ": true' w moim pliku .jshintrc. – NathanL