如何注册全局车把助手
How to register a global handlebar helper
handlebarhelpers.js 文件
var $ = require('jquery'),
Handlebars = require('handlebars'),
Backbone = require('backbone');
module.exports.ifCondhelper = function (Handlebars, options) {
Handlebars.registerHelper('ifequal', function(value1, value2, options) {
if(value1 === value2) {
return options.fn(this);
}
return options.inverse(this);
});
}
模板
{{#ifCondhelper.ifequal type ../../notificationMessage.SkuMappingNotAvailableMessageP1}}
<li notid="{{id}}"><a href="#">{{../../../notificationMessage.SkuMappingNotAvailableMessageP1}}: Something Something {{../../../notificationMessage.SkuMappingNotAvailableMessageP2}}: Something Something</a> </li>
{{/ifCondhelper.ifequal}}
我正在使用 Browserify,Backbone 如何在 browserify 中全局访问助手?请帮助
你只需要用registerHelper
来声明它,实际上你不能把它作为一个单独的模块来做
// helpers.js
var Handlebars = require('handlebars');
Handlebars.registerHelper('ifequal', function(value1, value2, options) {
if(value1 === value2) {
return options.fn(this);
}
return options.inverse(this);
});
module.exports = {} // This line not needed, just wanted to show you export nothing
现在在你的代码中某处的 handlebars compile 函数中
// Just including this module with require will
// register the helpers to the Handlebars global object
require('./helpers.js');
// Now the rest of your code
Handlebars = require('handlebars');
var template = Handlebars.compile(...);
...
...
差不多就是这样。
在您的模板中,您可以这样使用它:
{{#ifequal type ../../notificationMessage.SkuMappingNotAvailableMessageP1}}
<li notid="{{id}}">
<a href="#">
{{../../../notificationMessage.SkuMappingNotAvailableMessageP1}}: Something Something {{../../../notificationMessage.SkuMappingNotAvailableMessageP2}}: Something Something</a>
</li>
{{/ifequal}}
handlebarhelpers.js 文件
var $ = require('jquery'),
Handlebars = require('handlebars'),
Backbone = require('backbone');
module.exports.ifCondhelper = function (Handlebars, options) {
Handlebars.registerHelper('ifequal', function(value1, value2, options) {
if(value1 === value2) {
return options.fn(this);
}
return options.inverse(this);
});
}
模板
{{#ifCondhelper.ifequal type ../../notificationMessage.SkuMappingNotAvailableMessageP1}}
<li notid="{{id}}"><a href="#">{{../../../notificationMessage.SkuMappingNotAvailableMessageP1}}: Something Something {{../../../notificationMessage.SkuMappingNotAvailableMessageP2}}: Something Something</a> </li>
{{/ifCondhelper.ifequal}}
我正在使用 Browserify,Backbone 如何在 browserify 中全局访问助手?请帮助
你只需要用registerHelper
来声明它,实际上你不能把它作为一个单独的模块来做
// helpers.js
var Handlebars = require('handlebars');
Handlebars.registerHelper('ifequal', function(value1, value2, options) {
if(value1 === value2) {
return options.fn(this);
}
return options.inverse(this);
});
module.exports = {} // This line not needed, just wanted to show you export nothing
现在在你的代码中某处的 handlebars compile 函数中
// Just including this module with require will
// register the helpers to the Handlebars global object
require('./helpers.js');
// Now the rest of your code
Handlebars = require('handlebars');
var template = Handlebars.compile(...);
...
...
差不多就是这样。
在您的模板中,您可以这样使用它:
{{#ifequal type ../../notificationMessage.SkuMappingNotAvailableMessageP1}}
<li notid="{{id}}">
<a href="#">
{{../../../notificationMessage.SkuMappingNotAvailableMessageP1}}: Something Something {{../../../notificationMessage.SkuMappingNotAvailableMessageP2}}: Something Something</a>
</li>
{{/ifequal}}