Я хотел знать, как обслуживать шаблон начальной загрузки через новую версию парусов. Должен ли я обновлять ссылки JS на что-то другое. Я попытался переместить js и изображения в папку с ресурсами, но javascript не работал. Документация по парусам очень бедна по этой теме. Может ли кто-нибудь сказать простой способ его интегрировать. Спасибо заранее
Как обслуживать шаблон начальной загрузки в парусах 0.9?
Ответ 1
Sails 0.9.x перешел на использование Grunt для обработки активов. Это позволяет делать много разных видов предварительной компиляции и обработки активов. По умолчанию автоматическая активация объектов в ваши представления и макеты недоступна.
Мы добавили флаг, который вы можете включить при создании нового проекта парусов, который создаст папку в папке с вашими активами и автоматически добавит в файл index.html или файл макета любые файлы. Это должно использоваться только для разработки.
sails new <project name> --linker
Теперь у вас будет папка под названием linker
под вашей папкой с ресурсами, в которую вы можете поместить файлы, чтобы они автоматически связывались. Он также добавит некоторые теги в ваш файл index.html
и ваш файл макета, чтобы узнать, куда вводить различные JS, CSS и шаблоны.
Вы можете прочитать больше здесь: Sails Wiki - Assets
Если вы работаете с уже созданным проектом, вы можете вручную создать следующую структуру файла:
assets/
linker/
js/
styles/
templates/
Вам также необходимо добавить следующие тэги к вашему представлению:
<!--SCRIPTS-->
All .js files in assets/linker/js will be included here
In production mode, they will all be concatenated and minified
<!--SCRIPTS END-->
<!--STYLES-->
All .css files in assets/linker/styles (including automatically compile ones from LESS) will be included here
In production mode, they will all be concatenated and minified
<!--STYLES END-->
<!--TEMPLATES-->
All *.html files will be compiled as JST templates and included here.
<!--TEMPLATES END-->
Итак, чтобы использовать загрузочный файл и файлы, автоматически добавленные на вашу страницу, вы поместите файлы bootstrap.js в assets/linker/js
и файл bootstrap.css в assets/linker/css
.
В процессе производства вы захотите отредактировать файл grunt, чтобы скомпилировать все ваши css и js в отдельные файлы и вручную связать их в вашем представлении/layout/index.html.
Ответ 2
Есть проблема с глификоном. Пункт назначения css файла, который был изменен, -/.temp/public/min/production.css, а шрифты должны быть в /.temp/public/fonts/. Затем вам нужно скопировать папку шрифтов из объектов/linker/fonts/в/.temp/public/fonts/.
Вы должны добавить это в файл Gruntfile внутри массива copy.dev.files:
{
expand: true,
cwd: './assets/linker/fonts',
src: ['**/*'],
dest: '.tmp/public/fonts'
}
Или более общим способом:
{
expand: true,
cwd: './assets',
src: ['**/fonts/*'],
dest: '.tmp/public/fonts',
flatten: true
}
Он будет искать все папки под названием fonts
под assets
. Используйте flatten
, чтобы избежать подпапок.
Приветствия,