Sails.js Идентификация активов

Я использую компоновщик активов sails.js.

Я обновляю свои активы, добавляя в него версию актива:

assetfile.js?= <%= assetVersion %>

К сожалению, этот не работает, потому что имена js файлов заменяются компоновщиком!

Поддерживает ли сайт sails.js ссылку для работы? Или я оставил свой собственный, чтобы взломать файл grunt?

2 ответа

Если вы размещаете репозиторий git, вы можете использовать команду git commit sha для идентификации версии.

Я использую этот подход в одном из моих проектов, и он состоит из добавления следующего как rename.js to tasks/config

var git = require('git-rev')
module.exports = function(grunt) {
 git.short(function(hash) {
 var files = {
 '.tmp/public/min/production.' + hash + '.min.js': '.tmp/public/min/production.min.js',
 '.tmp/public/min/production.' + hash + '.min.css': '.tmp/public/min/production.min.css'
 }
 grunt.config.set('rename', {
 dist: {
 files: files
 }
 })
 })
 grunt.loadNpmTasks('grunt-rename')
};

а затем добавить задачу переименования в tasks/register/prod.js непосредственно перед задачами компоновщика.


На основе решения @CaseyWebb мы расширили наше приложение Sails для решения проблемы с версией с отметкой времени. Там также очень подробная запись в блоге об этом здесь: http://naya.com.np/@developer.naya/post/391862c0520b5b5632e99e812749a85b

licensed under cc by-sa 3.0 with attribution.