Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check view_parse result #343

Merged
merged 4 commits into from
May 4, 2016
Merged

Conversation

snadn
Copy link
Contributor

@snadn snadn commented Apr 29, 2016

hook 在中间件返回值为undefined时,会返回传入的参数。
所以当template返回undefined时,content 为传入的对象,切后续的序列化会报错。

这里仅简单添加判断将其设置为空字符串。

也可以考虑将处理逻辑放入hook的执行中,为其添加默认返回值参数。

@coveralls
Copy link

Coverage Status

Coverage decreased (-0.009%) to 93.496% when pulling 0c9aa0c on snadn:check_view_parse_result into 782569d on 75team:master.

@welefen
Copy link
Member

welefen commented May 3, 2016

这种最好是 middleware 里直接返回空字符串

@snadn
Copy link
Contributor Author

snadn commented May 3, 2016

@welefen 有多个view_parse,其中一个不做处理,选择了透传传入的参数,然后怎么玩下去呢?

@welefen
Copy link
Member

welefen commented May 4, 2016

@snadn 需要 middleware 里保证返回的内容,不然每个 hook 执行的时候都要进行一次判断。

@snadn
Copy link
Contributor Author

snadn commented May 4, 2016

@welefen 我觉得针对 ‘view_parse’ 这一类hook,在具体使用的场景,根据需求做处理应该是说得过去的。

我认为在middleware返回undefined的时候,hook的执行结果返回传入的参数可以认为是一种特性。这样也方便多个middleware串联。

但具体到 view_parse 的调用的时候。因为hook的特性,可能导致后续的逻辑出错,那对调用 hook('view_parse') 的返回结果做容错处理(模板渲染的返回期望是字符串)应该是合理的。

@welefen
Copy link
Member

welefen commented May 4, 2016

@snadn 好的,那我合并下。

@welefen welefen merged commit 32b0969 into thinkjs:master May 4, 2016
@snadn snadn deleted the check_view_parse_result branch May 2, 2018 07:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants