code: function replaceDefine(code) {
      var defineList = getDefineBlock(code);
      var segments = [];
      var index = 0;
      defineList.forEach(function (block) {
  
          if (block.type === 'function') {
              segments.push(code.slice(index, block.defineRange[0]));
              index = block.factoryRange[0] + 1;
  
              block.returnRange.forEach(function (range) {
                  segments.push(code.slice(index, range[0]));
                  segments.push('module.exports =');
                  segments.push(code.slice(range[0] + 6, range[1]));
                  index = range[1];
              });
              segments.push(code.slice(index, block.factoryRange[1] - 1));
  
              index = block.defineRange[1];
          }
          else if (block.type === 'object') {
              segments.push(code.slice(index, block.defineRange[0]));
              segments.push('module.exports = ');
              segments.push(code.slice(block.factoryRange[0], block.factoryRange[1]) + ';');
              index = block.defineRange[1];
          }
      });
  
      segments.push(code.slice(index));
  
      code = segments.join('');
  
      return code;
  }
docs: 替换define的return为 module.exports
  
  @param  {Object} code code
  @return {Object}