Как я могу получить шаблон Jade для автоматической компиляции в Visual Studio при операции сохранения?
Может кто-нибудь опубликовать некоторые основные шаги о том, как получить файлы *.html для компиляции в файлы *.jade при операции изменения / сохранения файла в Visual Studio?
Я установил nodetools, веб-основы. Подсветка синтаксиса, кажется, работает, но создание файла.jade ничего не делает. Я думаю, что где-то пропущен шаг.
Должен ли я использовать что-то вроде grunt-contrib-jade с задачей?
1 ответ
Решение
Visual Studio 2015: после долгих раздумий я получил следующий ответ:
- Установить узел
- Установите NodeTools для визуальной студии
- Выполнить: npm установить Jade (установить Jade)
- Запустите: npm install -g grunt-cli (установить grunt)
- Выполнить: npm установить беседку
- Создайте ниже файл package.json
Package.json: следующим образом
{
"name": "myapp",
"version": "0.1.0",
"devDependencies": {
"grunt": "~0.4.5",
"grunt-contrib-uglify": "~0.5.0",
"grunt-contrib-jade": "0.15.0",
"grunt-contrib-watch": "0.6.1"
}
}
7) Создайте следующий файл grunt.js
module.exports = function (grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
jade: {
compile: {
options: {
data: {
debug: true,
timestamp: "<%= new Date().getTime() %>"
}
},
files: [{
expand: true,
src: '**/*.jade',
ext : '.html'
}]
}
},
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
build: {
src: 'Scripts/bootstrap.js',
dest: 'Scripts/build/bootstrap.min.js'
}
},
watch: {
jade: {
files: '**/*.jade',
tasks: ['jade:watch'],
options: {
spawn: false
}
}
}
});
grunt.event.on('watch', function (action, filepath) {
if (filepath.indexOf('.jade') === -1) return;
var file = {};
var destfile = filepath.replace('.jade', '.html');
file[destfile] = filepath
grunt.config('jade.watch.files', file);
});
grunt.loadNpmTasks('grunt-contrib-watch');
// Load the plugin that provides the "uglify" task.
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-jade');
// Default task(s).
grunt.registerTask('default', ['uglify']);
};
Откройте Task Explorer, а затем убедитесь, что вы добавляете / привязываете задачу "watch" к открытому проекту.