Skip to content

Commit 1b2aee5

Browse files
committed
Merge pull request #27 from shaoshuai0102/master
null 变量处理问题
2 parents a848b67 + 1a5fb68 commit 1b2aee5

File tree

3 files changed

+4
-12
lines changed

3 files changed

+4
-12
lines changed

lib/engine/engine-ref.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ module.exports = {
2828
if (objr.stats !== STATS.SUCCESS) return objr
2929

3030
var v = objr.value
31-
if (v === undefined) {
31+
if (v === undefined || v === null) {
3232
var result = {
3333
stats: STATS.SUCCESS,
3434
value: v,
@@ -232,5 +232,3 @@ function extractProp(v) {
232232
v = v.replace(/^(get|set|is)/, '')
233233
return v[0].toLowerCase() + v.substr(1)
234234
}
235-
236-

lib/engine/index.js

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ Engine.prototype.Statements = function(node) {
111111
var cr = this[cn.type](cn)
112112

113113
if (cr.stats === STATS.SUCCESS) {
114-
if (cn.type === 'Reference' && cr.value === undefined) {
114+
if (cn.type === 'Reference' && (cr.value === undefined || cr.value === null)) {
115115
if (!cr.silent) {
116116
result.value += cr.literal
117117
}
@@ -177,9 +177,3 @@ Engine.prototype.mergeResult = function(target, src) {
177177
}
178178

179179
module.exports = Engine
180-
181-
182-
183-
184-
185-

test/engine.test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ describe('engine.test.js', function () {
3131

3232
engine.render({name: 'fengmk2'}).should.equal('Hello, fengmk2!\n')
3333
engine.render({name: ''}).should.equal('Hello, !\n')
34-
engine.render({name: null}).should.equal('Hello, null!\n')
34+
engine.render({name: null}).should.equal('Hello, ${name}!\n')
3535
engine.render({name: undefined}).should.equal('Hello, ${name}!\n')
3636
engine.render({}).should.equal('Hello, ${name}!\n')
3737
})
@@ -41,7 +41,7 @@ describe('engine.test.js', function () {
4141
template: 'ok $!id.'
4242
})
4343
engine.render({}).should.equal('ok .')
44-
engine.render({id: null}).should.equal('ok null.')
44+
engine.render({id: null}).should.equal('ok .')
4545
engine.render({id: 123}).should.equal('ok 123.')
4646
engine.render({id: 'foo'}).should.equal('ok foo.')
4747
})

0 commit comments

Comments
 (0)