Je vois dans le GJS GObject overrides il y a des définitions pour la plupart des types qui correspondent aux types Javascript, mais comment dois-je définir une propriété pour un tableau standard de chaînes? Certaines options qui me sont venues à l'esprit:Quelle est la manière correcte dans GJS de définir une propriété GObject pour un tableau?
- utilise TYPE_OBJECT et un GList, mais GJS le mappera-t-il à un tableau lorsque je le récupèrerai?
- utilisation TYPE_OBJECT et un GVariant avec un "comme" type et déballer moi-même
- utilisation TYPE_BOXED et TYPE_ARRAY, mais est TYPE_ARRAY comparable au type Array Javascript?
En guise de suivi, étant donné que je suppose que vous avez stocké le Variant sous la forme TYPE_OBJECT, puis-je supposer qu'il n'est pas possible d'avoir un Variant 'as' pour exporter en tant que propriété DBus' as'? Il ne semble pas y avoir de ParamSpec pour les variantes disponibles dans 'GObject.js' et même l'utilisation de la fonction stock semble étouffer. –
Je vais modifier la réponse pour montrer comment le faire. – ptomato
Intéressant, j'ai suivi votre exemple mais j'ai continué à recevoir une erreur appelant la propriété sur DBus 'Type attendu utf8 pour Argument 'strv' mais j'ai obtenu le type 'object'' jusqu'à ce que je revienne juste' [' one ',' deux '] ' getter. C'est correct, maintenant cela fonctionne aussi bien en interne sans déballer une variante partout, merci. –