如何在这种类型的返回语句中添加if语句:
return {
ID: select('core/editor').getEditedPostAttribute('featured_media'),
if (ID) {
media: select('core').getMedia( ID )
}
};
显然,我不能直接在返回{}
中删除if语句if()
。
您可以做两件事,要么使用三元运算符内联:
return {
ID: select('core/editor').getEditedPostAttribute('featured_media'),
media: (ID ? select('core').getMedia( ID ) : undefined)
};
或者创建对象并有条件地添加新属性
const obj = {
ID: select('core/editor').getEditedPostAttribute('featured_media')
};
if(ID){
obj.media = select('core').getMedia( ID )
}
return obj
问题内容: 为什么这给了我一个丢失的退货陈述错误?每个if / else都有返回值,最后一个括号出现错误 问题答案: 每个语句都在一个语句内。虽然从逻辑上讲这是不可能的,但是当所有评估都不为真时,编译器需要返回。 我建议: 我认为,此解决方案可解决编译器问题并稍微提高可读性。 或者,有以下解决方案: 引发异常将使你可以退出方法而无需返回任何信息……因为可以说,如果到达最后一个,显然会出错。
关于或语句中使用的返回语句,我有一个问题。 正如您在下面的方法中所看到的,它期望I
有人能用简单的英语解释一下这句话背后的逻辑吗? 假设mContainsLoadingRow为布尔值,如果< code>mContainsLoadingRow为< code>true, 然后返回< code > getContentDataSize()1 。 如果没有,则返回 这是正确的看待方式吗?
我有一个名为Lookup的函数,它通过API运行一些信息。如果用户的输入无效且查找无法处理,则返回None。我将如何写一些具有以下效果的内容:
问题内容: 我在从golang的if语句中返回函数的预期return语句时遇到麻烦。 我提供了以下代码: 主函数是否应该打印出随机函数返回的字符串值?我得到的是 有人知道如何实现这一目标吗? 问题答案: 即使该函数从未返回值,您也必须在末尾添加一个: http://play.golang.org/p/XFsPL2G15R
主要内容:示例有时,会有有多个 if 语句嵌入彼此内部,在其他编程语言这是比较常见。在 Erlang 中也是这样的。 下图是嵌套 if 语句流程的示意图。 这里是一个示例程序如下所示 - 示例 以下是上述程序需要说明的一些关键点 - 当第一个 if 语句条件评估(计算)为真,那么它会开始第二 if 语句条件评估(计算) 上面的代码的输出结果是 -