Sails.js v0.10 crea un nuevo proyecto. El vinculador no funciona. Gruntfile.js no se utiliza.
Pregunta
Con la versión predeterminada de Sails en npm (¿v.9?), --linker funciona bien, es decir.crea la carpeta /enlazador.Puedo copiar archivos js, css a assets/linker/
y aparecen en layout.ejs
automáticamente.
Ahora tengo Sails v0.10 instalado tanto a nivel local como global.Usando el nodo V0.10.25.Creé un nuevo proyecto de velas usando:
navega nuevo nombre_proyecto --linker
pero no se crea ninguna carpeta /linker.tuve que crear /.tmp
Como no existía, tuve que crear /.tmp/public/linker/
poner /js
& /styles
y agregarlos manualmente en layout.ejs
cambié el nombre Gruntfile.js
y mi programa todavía funciona, por lo que Gruntfile no hace nada en el programa.
Solución
Sails v0.10 ya no usa la carpeta del vinculador; solo estaba causando confusión.Si tiene habilitada la opción de vinculación, entonces cualquier activo bajo su assets
La carpeta se copiará a su .tmp/public
carpeta por Grunt cuando se levanta Sails.Grunt creará la carpeta pública según sea necesario.El grunt-sync
La tarea mantendrá las carpetas sincronizadas mientras el programa se esté ejecutando.
Los proyectos de Sails no dependen de Grunt, por lo que cambiar el nombre del Gruntfile (o eliminarlo por completo) no impedirá que el programa funcione, ¡pero eso no significa que no esté haciendo nada cuando está allí!Para ver qué está haciendo Grunt, puedes levantar Sails con sails lift --verbose
.
Otros consejos
Como complemento a la respuesta de Sgress454, la razón por la que se crea una carpeta .TMP es para que los archivos como los EJs y menos los archivos se puedan compilar en formatos que su navegador entenderá.Es similar a la forma en que cuando compila Java, se convierte en Java Bytecode (solo una analogía, definitivamente no es el mismo proceso). Aunque no necesariamente tiene que ser ninguna carpeta .TMP cuando no está ejecutando el servidor;Esto es algo que crea un gruñido y es lo que dice el navegador.Espero que esto aclare las cosas un poco más.