2017-10-20 13 views
0

Comment puis-je porter ce const dans dart?Port une carte js dans dart

const CHANNEL_STATES = { 
    closed: "closed", 
    errored: "errored", 
    joined: "joined", 
    joining: "joining", 
    leaving: "leaving", 
} 

J'ai besoin d'appeler ex. CHANNEL_STATES.closed Merci

Répondre

2

Vous pouvez le faire avec les membres statiques classe et constantes:

class CHANNEL_STATES { 
    static const String closed = "closed"; 
    static const String errored = "errored"; 
    static const String joined = "joined"; 
    static const String joining = "joining"; 
    static const String leaving = "leaving"; 
} 
+0

Mais avec ce mode, je ne peux pas les utiliser dans certains cas –

+0

Pourquoi cela ne devrait-il pas fonctionner? – rinukkusu

0

Je ne sais pas exactement ce que vous demandez, mais une constante de carte similaire à Dart serait la suivante:

const channelStates = const { 
    "closed": "closed", 
    "errored": "errored", 
    "joined": "joined", 
    "joining": "joining", 
    "leaving": "leaving", 
}; 

une carte Dart littérale peut utiliser un objet comme la clé, afin d'utiliser une chaîne comme la clé, vous devez citer. Vous ne pouvez pas utiliser uniquement un identifiant sans guillemets comme dans JavaScript.