[英]Provider 'xx' must return a value from $get factory method
[英]Provider 'xx' must return a value from $get factory method in AngularJs
我寫了一個angularjs
工廠如下
module.factory('LogService', function () {
function log(msg) {
console.log("Rahkaran:" + new Date() + "::" + msg);
}
return
{
log: log
};
});
但我一直收到這個錯誤
Provider 'LogService' must return a value from $get factory method
我用谷歌搜索了錯誤,我找不到任何解決方案。
巧合的是我把return
語句更改為了
return{
log: log
};
錯誤消失了!!
{
return
前或下一行之間是否有任何區別?
這稱為自動分號插入
return語句受自動分號插入(ASI)的影響。 沒有線路終結器;
返回關鍵字和允許的表達式之間。
return
a + b;
// is transformed by ASI into
return;
a + b;
因此,您必須在返回前插入{
而不是在下一行。
參考: https : //developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/return
在您的情況下,將始終返回未定義的值。 但在其他情況下,問題可能也是您從工廠返回null或未定義的值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.