У меня есть набор констант, похожегоПроверьте в коде несуществующего свойство запрашивается
let codes = {
OPEN_ACCOUNT: 1000,
CLOSE_ACCOUNT: 1001,
DEPOSIT_FUNDS: 3000
...
}
Иногда ключи переименованы или добавлены или удалены, поэтому структура codes
изменения объектов. Поскольку приложение является довольно большим, я был бы рад статический анализировать код с некоторым инструментом, как JSLint/TSLint для случаев, когда функция запуска с кодом, который больше не доступно:
runServerRequest(codes.DEPOSIT_FUNDS_SPECIAL_CASE, 500)
В приведенном выше примере DEPOSIT_FUNDS_SPECIAL_CASE
является не присутствует в объекте кодов, поэтому было бы здорово получить предупреждение от анализатора. Во всех возможных случаях не должно быть случаев, когда запрашивается несуществующее поле.
Как решить эту задачу самым простым способом?
Вопрос заключается в том, что коды объекта генерируется автоматически по команде сервера парней и выталкивается к репо. –
Если вы используете машинопись, тогда компилятор должен жаловаться на это, [как здесь] (https://www.typescriptlang.org/play/#src=let%20codes%20%3D%20%7B%0A%09 % 09OPEN_ACCOUNT% 3A% 201000% 2C% 0A% 09% 09CLOSE_ACCOUNT% 3A% 201001% 2C% 0A% 09% 09DEPOSIT_FUNDS% 3A% 203000% 0A% 09% 7D% 0A% 0A% 09console.log (codes.OPEN_ACCOUNTS)% 3B) –
Да, приложение находится в середине перехода на TypeScript, поэтому кодовая база представляет собой сочетание JS + TS, вероятно, это будет исправлено, если весь код находится в TypeScript. –