context: Object { actionCode: "bid", post: undefined }
ââ
Il test non controlla i parametri, quindi questo passa inosservato.
Suppongo che il parametro post dovrebbe essere this.args.post e non this.post.
Ho provato una soluzione alternativa aggiungendo incondizionatamente il componente e facendolo controllare da solo cosa fare, ma sfortunatamente sembra che anche gli argomenti non vengano passati correttamente, quindi sia la soluzione alternativa che unâimplementazione normale falliscono anche qui:
Ci sono getter in PostSmallAction per code, createdAt e path, ma (di nuovo) this.post non esiste e anche username() sembra avere un bug (non câè action_code_who in this.args.post?), quindi questi attributi rimangono vuoti.
Non riesco a trovare unâimplementazione esistente ânel mondo realeâ. Sono davvero il primo a usarlo?
Hai ragione; il parametro post dovrebbe essere this.args.post invece di this.post.
username è un poâ fuorviante qui. action_code_who è effettivamente corretto ma è utilizzato da alcuni plugin come il plugin assign, quindi non è sempre presente nellâoggetto post. Per ottenere lâutente che ha creato la piccola azione, puoi usare @post.username
Non ero sicuro se potessi apportare modifiche al tuo PR, quindi ho aperto quello qui sotto per affrontare questi problemi:
correggere lâargomento post passato sia al transformer che al componente personalizzato
rinominare lâargomento username in who riducendo al minimo la confusione attorno a questo argomento
aggiungere test per verificare che gli argomenti vengano passati correttamente
Per quanto ne so, la vecchia API non è stata utilizzata in nessuna delle personalizzazioni che tracciamo nei repository all-the-*. Ho aggiunto solo questa per fornire unâalternativa nel caso in cui un self-hoster la stesse utilizzando.