Sails.js v0.10 создать новый проект --линкер не работает Gruntfile.js не используется
Вопрос
С версией парусов по умолчанию на npm (v.9?) --linker работает нормально, т.е.создает папку /linker.Я могу скопировать файлы js, css в assets/linker/
и они появляются в layout.ejs
автоматически.
Теперь у меня установлены паруса v0.10 как локально, так и глобально.Использование узла V0.10.25.Я создал новый проект парусов, используя:
паруса новое имя_проекта --linker
но папка /linker не создается.мне пришлось создать /.tmp
Поскольку этого не было, мне пришлось создать /.tmp/public/linker/
класть /js
& /styles
и добавьте их вручную в layout.ejs
я переименовал Gruntfile.js
и моя программа все еще работает, поэтому Gruntfile ничего не делает в программе.
Решение
Sails v0.10 больше не использует папку компоновщика — это просто вызывало путаницу.Если у вас включена опция компоновщика, все ресурсы под вашим assets
папка будет скопирована на ваш .tmp/public
папка Grunt, когда паруса подняты.Общая папка будет создана Grunt по мере необходимости.А grunt-sync
задача будет поддерживать синхронизацию папок, пока программа работает.
Проекты Sails не зависят от Grunt, поэтому переименование Gruntfile (или полное его удаление) не остановит работу программы, но это не значит, что она ничего не делает, когда она там!Чтобы узнать, что задумал Грант, вы можете поднять паруса с помощью sails lift --verbose
.
Другие советы
В качестве дополнения к ответу sgress454 причина создания папки .tmp заключается в том, что такие файлы, как ejs и less, можно скомпилировать в форматы, понятные вашему браузеру.Это похоже на то, как когда вы компилируете Java, он преобразуется в байт-код Java (просто аналогия, определенно не тот же самый процесс). Однако не обязательно должна быть какая-либо папка .tmp, когда вы не используете сервер;это то, что создает Grunt и что читает браузер.Надеюсь, это прояснит ситуацию немного больше.