javascript - 如何制作一个 JSON 来将 src 和 dest 地址放入其中,并且我们可以在 grunt.js 中调用该 JSON?

标签 javascript json node.js gruntjs

我正在使用 grunt 来制作构建工具,到目前为止,我将 srcdest 地址直接放在我的 grunt.js 文件中但在这种情况下,如果我想更改我的目标,我必须更改文件的每个任务,这不是一个好的做法。例如,如果我的 grunt.js 文件具有以下任务:

concat: {
  js: {
    src: 'src/js/*.js',
    dest: 'dest/js/concat.js'
  },
  css: {
    src: 'src/css/*.css',
    dest: 'dest/css/concat.css'
  }
},
min: {
  js: {
    src: 'dest/js/concat.js',
    dest: 'dest/js/concat.min.js'
  }
},

如果我改变我的地址,我就必须在每个地方改变! 我想要一个 JSON 文件,可以在其中声明 src 和 dest 并在 grunt.js 文件中调用。我们怎样才能做到这一点???

最佳答案

您可以将属性添加到 package.json例如声明元数据

{
   "name": "test",
   "meta":{
     "src":"someSrcFolder",
     "dest":"someDestFolder"
   },
 ....
}

然后在你的Gruntfile.js中,你可以像这样阅读这些属性

grunt.initConfig({
  pkg: '<json:package.json>',
  concat: {
    js: {
      src: '<%= pkg.meta.src %>/js/*.js',
      dest: '<%= pkg.meta.dest %>/js/concat.js'
    },
    css: {
      src: '<%= pkg.meta.src %>/css/*.css',
      dest: '<%= pkg.meta.dest %>/css/concat.css'
    }
  }
});

重要的位是pkg:<json:package.json>它将 json 文件加载到内存中,并使用下划线模板插值 <%= pkg.meta.src %>其计算结果为 meta 的内容属性已添加到 json 文件。

请记住,Gruntfile 只是一个 JavaScript 文件,因此您还可以拥有一个引用路径的对象,然后将它们插入到您的任务中。

关于javascript - 如何制作一个 JSON 来将 src 和 dest 地址放入其中,并且我们可以在 grunt.js 中调用该 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13866655/

相关文章:

mysql - 如何在mysql中返回json字符串的值

javascript - 为什么在哈巴狗的简单渲染中显示 'Cannot Get/'?

javascript - 使用 Ajax 和 jQuery 无法在 div 部分显示 Json 数据

javascript - 使用 foreach 循环的短 URL 数组以及如何使用 nodejs TALL 解析每个 url

javascript - 字符串未定义并在控制台中执行(json 到 html)

jquery - 最后一列标题文本使用数据表垂直对齐

node.js - 生成 GitHub 安装访问 token 时出现 PEM 错误

javascript - 在 React Native 中登录凭据无效时如何显示警报消息?

javascript - 将加密浏览器添加到 Gatsby 项目

javascript - 对垂直图像设置不同的样式,以便它们并排运行