Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Mais de um argumento na diretiva

É possível passar mais de um argumento para a diretiva, assim como os modificadores?

Ex: v-meu-transform:scale:rotate.anime

Até mais

3 respostas

Bom dia Fábio!

Você pode passar quantos modificares quiser, mas se quiser passar vários parâmetros você precisa passar um objeto JavaScript com todos esses parâmetros e usar internamente. Se não me engano, eu faço isso no treinamento.

Mas nesse caso, como seria então a sintaxe?

Quando passamos vários modificadores, vamos concatenando com:

diretiva.modificador1.modificador2.modificador3

Durante o treinamento vi a possibilidade de passar varios valores como objetos com:

diretiva:argumento.modificador_x="{prop1:'valor1', prop2:'valor2'}"

Mas no caso de argumentos como objeto seria da forma abaixo?

diretiva:{param1, param2, paramN}.modificador1="..."

Seria isso? Ou efetivamente como :param só temos a opção de ter um, e nesse caso passamos demais parâmetros como valores do objeto?

Espero ter deixado mais claro a duvida... :D

solução!

Sobre múltiplos argumentos, bem, não há suporte padrão para isso. Há até um workaround que o próprio criador do Vue chama atenção dizendo que o design da diretiva deveria ser diferente (criar outra diretiva).

Você pode acompanhar a discussão aqui.

https://github.com/vuejs/vue/issues/862