Ren*_*ama 3 javascript templates node.js underscore.js yeoman
我正在使用Yeoman创建一个生成器,而Yeoman又使用underscore.js模板.
在给定的文件中,我有这个代码:
var
<% _.each(requires, function(require) { %>
<% if(require.shouldApply) { %>
<%= _.camelize(require.name) %> = require('<%= require.name %>'),
<% } %>
<% }); %>
mongoose = require('mongoose'),
Schema = mongoose.Schema;
Run Code Online (Sandbox Code Playgroud)
鉴于require.shouldApply有时是假的我不希望产生空白行.
所以,例如,对于输入requires: [{shouldApply: false, name: 'zoo'}, {shouldApply: false, name: 'foo'}, {shouldApply: true, name: 'bar'}]我得到这个:
var
zoo = require('zoo'), //note that the line below is blank
bar = require('bar'), //I don't want the blank line above
mongoose = require('mongoose'),
Schema = mongoose.Schema;
Run Code Online (Sandbox Code Playgroud)
有谁知道如何防止underscore.js模板创建这些不需要的空白行?
在JSP中,我们有时会使用(恼人的)将模板标记扩展到下一行的做法来防止这种情况.
它对于可读性并不理想,但它确实解决了"不需要的换行"问题.
例如:
<% if(require.shouldApply) {
%><%= _.camelize(require.name) %> = require('<%= require.name %>'),
<% } %>
Run Code Online (Sandbox Code Playgroud)
在JSP中我们也有trimDirectiveWhitespaces类似的选项 - 这些选项并不完美,但可以提供帮助.你的模板系统也可能有这样的东西.
| 归档时间: |
|
| 查看次数: |
1336 次 |
| 最近记录: |