Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#14239 closed defect (fixed)

dojo/fx module augments dojo/_base/fx module return

Reported by: Kenneth G. Franqueiro Owned by: Bryan Forbes
Priority: high Milestone: 1.7.1
Component: fx Version: 1.7.0
Keywords: fx Cc:
Blocked By: Blocking:

Description

When dojo/_base/fx is loaded normally, it returns an object with the following properties:

  • Animation
  • _Line
  • _defaultEasing
  • _fade
  • anim
  • animateProperty
  • fadeIn
  • fadeOut

However, when dojo/fx is also loaded, suddenly the module return of dojo/_base/fx also receives all the properties defined in dojo/fx, because it augments dojo.fx after assigning it baseFx (the module return of dojo/_base/fx), and ends up looking like this:

  • Animation
  • _Line
  • _defaultEasing
  • _fade
  • anim
  • animateProperty
  • chain
  • combine
  • fadeIn
  • fadeOut
  • slideTo
  • wipeIn
  • wipeOut

This is easily observable with the following code: (remove dojo/fx for comparison)

<!DOCTYPE html>
<html>
  <body>
    <script src="dojo/dojo.js" data-dojo-config="async: true"></script>
    <script>
require(["dojo/_base/fx", "dojo/fx"], function(baseFx, fx){
  console.log("baseFx:", baseFx);
  console.log("fx:", fx);
});
    </script>
  </body>
</html>

Note that this and #14238 are at least partially related (since #14238 also has to do with the line in dojo/fx which sets dojo.fx equal to baseFx).

Change History (4)

comment:1 Changed 10 years ago by Kenneth G. Franqueiro

Priority: normalhigh

comment:2 Changed 10 years ago by Bryan Forbes

Resolution: fixed
Status: newclosed

Fixed in [27046], [27047], and [27048].

comment:3 Changed 10 years ago by Kenneth G. Franqueiro

Looks like you fixed it in trunk... any thoughts to porting these changes to 1.7.1? Do you think there's any risk involved?

comment:4 Changed 10 years ago by Kenneth G. Franqueiro

Whoops, sorry, totally misread [27046]. Obviously time for me to hit the sack before the sack hits me. Thanks Bryan.

Note: See TracTickets for help on using tickets.