错误的 grunt 模板字符串评估结果

Wrong grunt template string evaluation result

使用以下 Grunt 配置时,出现 404 错误。

module.exports = function(grunt) {

var taskConfig = {
    app: 'app',
    dist: 'app'
};

grunt.initConfig({
    taskConfig: taskConfig,
    connect: {
        serveMyApp: {
            options: {
                keepalive: true,
                debug: true,
                port: '3001',
                hostname: '0.0.0.0',
                livereload: true,
                base: '<%= taskConfig.dist %>/',
                middleware: function(connect, options, middlewares) {
                    // 1. mod-rewrite behavior
                    var rules = [
                        '!\.html|\.js|\.css|\.ico|\.svg|\.jp(e?)g|\.png|\.woff|\.gif$ /index.html'
                    ];
                    middlewares.unshift(rewrite(rules));
                    return middlewares;
                }
            }
        }
    }
);

如果我将 base 设置为如下字符串值,连接将按预期工作:

base: 'app/',

我原以为模板字符串评估会为 base 生成相同的字符串值,但我想它不会。

我做错了什么?

<%= ... %> 语法用于模板。

在您的 Gruntfile.js 中调用变量就像在任何其他 js 文件中一样

...
base: taskConfig.dist,
...