Is it bad practice to to use wrapping anonymous function for module.exports in Node?

I've started to use wrapping anonymous function in my NodeJS express modules lately as it somehow helps me write cleaner code.

However I'm not sure if this is considered bad/good practice in the Node environment (maybe some debugging/optimization issues?), it is extensively used by Coffeescript so I guess it must be OK, is it?

Express Controller example:

module.exports = (function() {

  function LinksController() {}

  var moment = require('moment'),
      _ = require('underscore'),
      Q = require('q');

  LinksController.edit = function edit(req, res, next) {
        ...
  }

  return LinksController;

})();

There's nothing technically wrong with doing this, but it's completely unnecessary.