使用gruntjs注释或取消注释js块
Comment or uncomment js block using gruntjs
如何使用gruntjs自动注释或取消注释.js文件中的某些代码块?原因是我写的一些东西只是为了前端开发(即发送虚假数据/事件)。但是在进行部署时,我希望确保这些代码被注释掉,并且真正的ajax事件代码被取消注释。
如果有变通办法,请告诉我。或者我是否必须为此编写自己的grumjs。感谢
我昨晚为一个个人项目研究了这个问题,发现grunt-template
非常适合这个法案。您可以将代码包装在注释掉的lo-dash/aunderline-like模板块中,并在grunt编译过程中对其进行评估。
我在项目中使用它的方式如下:
// ....
//concat files for package
template: {
build: {
options: {
data: grunt.file.readJSON('./package.json')
},
files: {
'js/dist/package-<%= pkg.version %>.js': ['js/dist/package-<%= pkg.version %>.js']
}
}
}
// ....
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-template');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.registerTask('default', [
'concat',
'template',
'uglify',
]);
然后在js/dist/package-<%= pkg.version %>.js
的某个地方,如果我有一条类似的线路
// <% if(development) { %>
console.log("better remove this line Johnny");
alert("or the clients will be pissed");
// <% } %>
Grunt将评估package.development以确定是否包含该行。非常简洁——我用它来排除客户端服务器可能不支持的不必要代码。另一件很棒的事情是javascript代码仍然具有有效的语法,并且在没有编译的情况下运行
我和迈克尔在一起;我强烈建议您将测试代码提取到测试中,这样它就永远不会被删除,如果您需要重构,也会对您有所帮助。Mockjax是专门为此设计的,您可以将它与类似QUnit的东西配对,如Gist:中所示
https://gist.github.com/NickJosevski/1564578
相关文章:
- 删除Angular JS中的辅助HTML注释
- 使用gruntjs注释或取消注释js块
- 浏览器注释掉使用JS插入的代码
- 正则表达式在 JS 文件中查找第一个注释
- 正确匹配JS多行注释的每一行
- 如何使用 PHP 删除 JS 注释
- 如何使用 JS/jQuery 在 IE 中捕获注释 nodeType 8
- 隐藏的代码注释,甚至在源代码(HTML / JS)中
- 使用 GCC 连接多个 JS 模块,从 ES2015 转译并注入带有 @define 注释的变量
- Vue.js 注释中的绑定
- 是否可以使用 JS 或其他 PL 将注释包含在注释中
- Node.js regex:在样式表中查找所有CSS属性,而不是在注释中
- 获取dust.js以剥离JavaScript注释
- HTML SELECT JS onchange()禁用注释框
- JS库:what's的注释块中带有感叹号
- 在PHP中转义json数据而不使用JS注释hack的正确方法
- 如何添加一个显示/隐藏注释链接不工作与下划线.js
- 使用sweet.js生成动态注释
- Node.JS提取类注释
- 如何使用JavaScript注释让vadin以UTF-8格式加载JS文件?