Rez*_*eza 32 javascript angularjs
我写了一个angularjs工厂如下
module.factory('LogService', function () {
function log(msg) {
console.log("Rahkaran:" + new Date() + "::" + msg);
}
return
{
log: log
};
});
Run Code Online (Sandbox Code Playgroud)
但我一直收到这个错误
Provider 'LogService' must return a value from $get factory method
我用谷歌搜索了错误,我找不到任何解决方案.
巧合的是我把return声明改成了这个
return{
log: log
};
Run Code Online (Sandbox Code Playgroud)
错误消失了!!
{在前面return或下一行之间有什么区别吗?
Nae*_*ikh 42
这称为自动分号插入
return语句受自动分号插入(ASI)的影响.;return关键字和允许的表达式之间没有行终止符.
return
a + b;
// is transformed by ASI into
return;
a + b;
Run Code Online (Sandbox Code Playgroud)
所以你必须{在返回前插入而不是在下一行插入 .
参考: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/return
| 归档时间: |
|
| 查看次数: |
24776 次 |
| 最近记录: |