Merge pull request #849 from wycats/helper-undefined
Fix undefined handling for pathed lookups
This commit is contained in:
@@ -377,10 +377,9 @@ JavaScriptCompiler.prototype = {
|
||||
for (; i < len; i++) {
|
||||
this.replaceStack(function(current) {
|
||||
var lookup = this.nameLookup(current, parts[i], 'context');
|
||||
// We want to ensure that zero and false are handled properly for the first element
|
||||
// of non-chained elements, if the context (falsy flag) needs to have the special
|
||||
// handling for these values.
|
||||
if (!falsy && !i && len === 1) {
|
||||
// We want to ensure that zero and false are handled properly if the context (falsy flag)
|
||||
// needs to have the special handling for these values.
|
||||
if (!falsy) {
|
||||
return ' != null ? ' + lookup + ' : ' + current;
|
||||
} else {
|
||||
// Otherwise we can use generic falsy handling
|
||||
|
||||
@@ -137,4 +137,12 @@ describe('Regressions', function() {
|
||||
it('GH-820: zero pathed rendering', function() {
|
||||
shouldCompileTo('{{foo.bar}}', {foo: 0}, '');
|
||||
});
|
||||
|
||||
it('GH-837: undefined values for helpers', function() {
|
||||
var helpers = {
|
||||
str: function(value) { return value + ''; }
|
||||
};
|
||||
|
||||
shouldCompileTo('{{str bar.baz}}', [{}, helpers], 'undefined');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user