La documentation pour transition.ease([value[, arguments]])
semble rendre relativement clair ce qu'ils essaient de dire. De plus, il suit la syntaxe "normale" pour les méthodes d'avoir des arguments optionnels en []
.
Dans ce cas, cela signifie que ease()
est une méthode de transition
. Pour le ease()
méthode : ([value[, arguments]])
signifie que le passage de tout argument est facultatif. Alors, value[, arguments]
est censé signifier que si le value
est présent, alors un nombre illimité d'options supplémentaires est disponible. arguments
peut éventuellement être présent. Je dis "destiné à signifier" parce que normalement le fait de pouvoir avoir des multiples d'un argument est indiqué en utilisant une ellipse ...
. Ainsi, ce serait normalement : value[, arguments...]
. En examinant de plus près la documentation, il est clair que c'est ce qui était prévu.
Analyse de la documentation (mise en forme supplémentaire par moi) :
Spécifie la transition fonction de détente .
Si valeur est une fonction, elle est utilisée pour faciliter la valeur actuelle de la synchronisation paramétrique. t qui se situe généralement dans l'intervalle [0,1]. (A la fin d'une transition, t peut être légèrement supérieure à 1).
Vous pouvez passer une fonction comme argument à transition.ease()
. Si c'est le cas, elle est utilisée comme fonction pour déterminer comment la transition se produit.
Autrement, valeur est supposé être une chaîne de caractères et les arguments sont passés à la fonction d3.ease pour générer une fonction d'assouplissement. La fonction d'assouplissement par défaut est "cubique-in-out". Notez qu'il n'est pas possible de personnaliser la fonction d'assouplissement par élément ou par attribut ; toutefois, si vous utilisez la fonction d'assouplissement " linéaire ", vous pouvez appliquer un assouplissement personnalisé à l'intérieur de votre interpolateur à l'aide des méthodes suivantes attrTween o styleTween .
Si value
n'est pas une fonction, il est supposé que vous allez utiliser la fonction d3.ease()
comme fonction de transition. Dans ce cas, tous les arguments de transition.ease()
sont transmises à d3.ease()
. d3.ease()
suppose que value
(appelé type
dans le d3.ease()
write-up) est une chaîne de caractères. d3.ease(type[, arguments…])
a la possibilité de prendre des arguments supplémentaires facultatifs. Pour que vous puissiez spécifier tous les arguments supplémentaires que vous souhaitez à la méthode d3.ease()
fonction, transition.ease()
a également la capacité d'accepter de tels arguments et de les transmettre à d3.ease()
.
Note : En examinant l'interaction entre transition.ease()
y d3.ease()
c'est là que nous voyons que transition.ease([value[, arguments]])
aurait vraiment dû être écrit avec l'ellipse en tant que transition.ease([value[, arguments..]])
. Si ce n'est pas l'utilisation prévue, alors l'interaction décrite avec les produits de l'industrie de l'alimentation et de la santé. d3.ease()
n'aurait pas de sens.
Si facilité n'est pas spécifié, renvoie la fonction d'assouplissement liée au premier élément non nul de la transition.
En fait, ce n'est pas clair. Je pense qu'il y a une erreur dans le fait que " facilité "devrait être " valeur ". Dans ce cas, il faudrait lire :
Si valeur n'est pas spécifié, renvoie la fonction d'assouplissement liée au premier élément non nul de la transition.
Si c'est vraiment ce qui était prévu, alors ne pas spécifier d'arguments à transition.ease()
aura pour résultat de récupérer comme valeur retournée la fonction d'assouplissement qui est liée au premier élément non nul de la transition. Il s'agirait d'une utilisation normale et attendue du fait de ne pas fournir d'arguments à une telle fonction. Ainsi, je considère qu'il est tout à fait probable que ce problème soit réellement une erreur dans la documentation. Cela peut être vérifié soit en regardant dans le code source, soit en expérimentant.