gpt4 book ai didi

javascript - 使用grunt将jade模板编译为sails.js中的javascript函数

转载 作者:行者123 更新时间:2023-11-27 23:48:03 24 4
gpt4 key购买 nike

我正在 Sails.js 中构建一个应用程序,我想将一些 jade 模板编译为 javascript 函数以供客户端使用。我发现了一些文章解释了如何做到这一点,但是当我尝试实现他们的步骤时,它们似乎不适合我

我正在尝试编译位于 App/Views/Client 中的文件并将编译后的 javascript 文件放入 App/.tmp/public/templates

我的 grunt 任务位于 App/tasks/config 中,并且基于 sails.js 附带的 Coffeescript grunt 任务。我的咕噜任务看起来像这样

module.exports = function(grunt) {
grunt.config.set('jade', {
dev: {
templates:{
options: {
pretty: true,
client: true,
namespace: 'Templates'
},
files: [{
expand: true,
cwd: 'views/client/',
src: ['**/*.jade'],
dest: '.tmp/public/templates/',
ext: '.js'
}]
}
}
});
grunt.loadNpmTasks('grunt-contrib-jade');
};

我已将其添加到 sails.js 附带的compileAssets.js grunt 任务中,当我运行 sails lift 命令时,我可以看到它正在运行。

当它运行时,它报告创建了 0 个文件,这表明我的路径有问题。不过,我已经根据与 sails.js 中的其他繁重任务相同的工作文件夹来定义它们。我在路径上尝试了多种变体,包括将 ./放在路径的开头,但似乎都不起作用。

任何人都可以帮助解释我的 grunt 文件出了什么问题吗?或者如何让它将正在查看的文件夹输出到控制台,以便我可以确定我的路径是否正确?

最佳答案

您的配置对象太深了一层。dev 已经是任务的目标,Grunt 将开始在其中查找 files 属性。 templates 被悄悄忽略。

因此配置对象应该如下所示:

dev: {
options: {
pretty: true,
client: true,
namespace: 'Templates'
},
files: [{
expand: true,
cwd: 'views/client/',
src: ['**/*.jade'],
dest: '.tmp/public/templates/',
ext: '.js'
}]
}

关于javascript - 使用grunt将jade模板编译为sails.js中的javascript函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32980445/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com