Typescript: 'рдХреЙрдиреНрд╕реНрдЯ' рдПрдирдо рдореЗрдВ рдЗрдВрдбреЗрдХреНрд╕ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рддрд░реНрдХ рдПрд╕/рдкреНрд░рдХрд╛рд░ 'рд╕реНрдЯреНрд░рд┐рдВрдЧ'/рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЕрдХреНрд╖рд░/

рдХреЛ рдирд┐рд░реНрдорд┐рдд 22 рдЬрдире░ 2015  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: microsoft/TypeScript

"'рдХреЙрдиреНрд╕реНрдЯ' рдПрдирдореНрд╕ рдореЗрдВ рдЗрдВрдбреЗрдХреНрд╕ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рддрд░реНрдХ 'рд╕реНрдЯреНрд░рд┐рдВрдЧ' рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП"

рдпрд╣ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХрд╛рдлреА рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ:
type_string

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
"'рдХреЙрдиреНрд╕реНрдЯ' рдПрдирдо рдХрд╛ рдЗрдВрдбреЗрдХреНрд╕ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рддрд░реНрдХ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЕрдХреНрд╖рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП"

рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрдХрд▓рдХ рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реИ:

if (isConstEnumObjectType(objectType) && node.argumentExpression && node.argumentExpression.kind !== SyntaxKind.StringLiteral) {
  error(node.argumentExpression, Diagnostics.Index_expression_arguments_in_const_enums_must_be_of_type_string);
}

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рдмрд╕ 'рдХреЙрдиреНрд╕реНрдЯ' рдХреЛ рд╣рдЯрд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред
рд╡реИрд╕реЗ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИ, рдЖрдкрдХреЛ рдХреБрдЫ рдРрд╕рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

enum MyEnum{ 
    A, B, C
}

let index = 2;

// this is how you can get the value from the enum without haveing tslint error message.
(<any>MyEnum)[index]

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдПрдХ рдкреАрдЖрд░ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреА

рд╕рдВрджреЗрд╢ рдЕрдм рд╣реИ "рдПрдХ рдХреЙрдиреНрд╕реНрдЯ рдПрдирдо рд╕рджрд╕реНрдп рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЕрдХреНрд╖рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред", рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИред

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рдмрд╕ 'рдХреЙрдиреНрд╕реНрдЯ' рдХреЛ рд╣рдЯрд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред
рд╡реИрд╕реЗ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИ, рдЖрдкрдХреЛ рдХреБрдЫ рдРрд╕рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

enum MyEnum{ 
    A, B, C
}

let index = 2;

// this is how you can get the value from the enum without haveing tslint error message.
(<any>MyEnum)[index]
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

DanielRosenwasser picture DanielRosenwasser  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Roam-Cooper picture Roam-Cooper  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

weswigham picture weswigham  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

uber5001 picture uber5001  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Antony-Jones picture Antony-Jones  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ