Creo que el problema es que va a golpear si utilizó define anónimos. Si desea un archivo de script combinado/incluido que contenga todas sus definiciones, tendrá que nombrarlas.
por ejemplo.
define("someModule", ["jquery", "ko"], function($,ko) { ... });
en lugar de
define(["jquery", "ko"], function($,ko) { ... });
Si utiliza los nombres de archivo que los nombres de los módulos, podrás cargarlos de forma asíncrona (no incluido), así como precargado (incluido). De esta forma puede trabajar en modo de depuración y en modo de lanzamiento sin tener que cambiar sus requisitos.
No tengo experiencia con el optimizador RequireJS para saber si se ocupa de las definiciones anónimas o no.
ACTUALIZACIÓN:
recientemente he tenido que hacer esto y uno de los problemas que encontramos fue el atributo de datos principal de las require.js carga etiqueta de script. Como el archivo main.js tenía dependencias en los módulos incluidos, deben cargarse antes de main.js pero después de require.js. Así que tuve que deshacerme de data-main y cargar ese archivo (desagregado) al final.
de
<script src="../JS/require-v2.1.2.js" type="text/javascript" data-main="main.js"></script>
a
<script src="../JS/require-v2.1.2.js" type="text/javascript"></script>
<%: System.Web.Optimization.Scripts.Render("~/bundles/signup") %>
<script src="main.js" type="text/javascript"></script>
No he mirado, pero si la configuración del paquete podría asegurar main.js es pasado, entonces no sería siquiera necesita que la última etiqueta de script.
Desde el enfoque de AMD se basa principalmente en las secuencias de comandos cargar otros guiones , Creo que tu mejor apuesta es ya sea minify cada script de forma independiente (sin empaquetar) o, de hecho, use el optimizador RequireJS que intenta detectar inclusiones de módulo y agrupar en consecuencia. – Avish