Я только начинаю использовать SailsJS в качестве своего первого веб-фреймворка на Node. Допустим, я хочу добавить MomentJS и использовать его во всем приложении. Как это настроить?
Настройка паруса.js: Как сделать модуль узла доступным для всего проекта паруса (контроллер/модель и т. д.)?
Ответы (3)
вы можете использовать bootstrap.js (в config/)
как:
module.exports.bootstrap = function (cb) {
sails.moment = require('moment');
cb();
};
во всех файлах Sails, которые вы можете использовать
sails.moment()
в настоящее время.
npm install moment --save
- person Asaf; 27.03.2017
Если вы пытаетесь включить свои node_modules на стороне клиента, такие как jQuery, AngularJS или одну из множества различных библиотек шрифтов, то вы можете npm install
их как обычно, но просто чтобы быть уверенным в парусах, вы редактируете свой tasks/config/copy.js
и добавляете новый блок, пример:
grunt.config.set('copy', {
dev: {
files: [{
expand:true,
cwd: './node_modules/font-awesome/fonts',
src: ['**/*'],
dest: '.tmp/public/fonts'
}
}
});
LESS может быть @import
ed, как обычно, без копирования. Другие активы необходимо будет скопировать, как указано выше. Если вы используете sails linker
, не забудьте также добавить пути JS к tasks/pipeline.js
(при необходимости).
Вы можете прочитать больше здесь: http://ash.zi.vc/sails/2016/02/02/включая-client-side-node-modules-in-my-sails-application/
Не совсем очевидно, как синхронизировать модули npm с каталогами, доступными в Интернете.
SailsJS ничем не отличается от любого другого приложения NodeJS. Итак, поверх вашего (скажем) файла Controller.js вы делаете
var m = require("moment");
И вы можете идти. Метод @mdunisch, очевидно, позволит вам использовать пакет moment во всем приложении, без необходимости делать «require» в каждом файле.