У меня есть большой проект TypeScript, и я недавно добавил tslint, чтобы обеспечить соблюдение некоторых основных правил стиля кода. В основном это было безболезненно, но есть одна вещь, которую я все еще сомневаюсь.
У меня есть несколько фрагментов кода, где у меня есть объект, похожий на синглтон, который обертывает некоторые свойства и функции. Представьте что-то вроде:
function open(x) {...};
function close(x) {...};
let isOpen = false;
export const MainMenu {
open,
close,
isOpen
};
Но проблема в том, что tslint жалуется на имя MainMenu, потому что я сказал ему применять имена переменных в стиле camelCase. Во всех обстоятельствах, кроме этого, соглашение остается верным, и в подобных ситуациях я думаю, что правильно писать в верхнем регистре (Math
, Reflect
и т. д. все следуют этому соглашению).
Так что мне здесь делать? Я мог бы либо отключить правило всякий раз, когда это происходит, либо, возможно, для этого больше подходит концепция namespace
? Но тогда я использую внешние модули, так что не знаю, стоит ли. Кроме того, namespace
усложняет добавление элементов свойства.
Приветствуются любые советы.