Недавно, после слияния vcs, мы обнаружили, что классы ES6 (по крайней мере, в NodeJS) позволяют вам определять метод дважды. то есть приведенная ниже программа работает без жалоб.
class Test {
foo() {
console.log("first one")
}
foo() {
console.log("second one")
}
}
const test = new Test;
test.foo()
В нашем примере с реальным миром два определения метода были довольно далеко друг от друга в исходном файле, и это на некоторое время поставило нас в тупик. Есть ли способ заставить классы ES6 в NodeJS в не разрешить это? Есть ли флаг, который мы можем запустить node
, с которым это не разрешается, или, может быть, правило es-lint? Или о какой-то третьей вещи, о которой я не думаю?
Нам бы хотелось что-то, что помешало бы запуску нашей программы, если бы был один класс с двумя определенными методами.