当我声明使用匿名函数时,我收到了一个带有工厂的未知提供程序错误(注入器):
(function () {
'use strict';
angular.module('app').factory('errorCodeFactory', errorCodeFactory);
function errorCodeFactory() {
var factory = {
getMessage: getMessage
};
return factory;
function getMessage(errorObject) {
return "hi";
};
};
});
如果我声明没有将它包装在一个函数中,它可以工作:
angular.module('app').factory('errorCodeFactory', function() {
var factory = {};
factory.getMessage = function (errorObject) {
return "hi";
};
return factory;
});
不确定为什么第一个例子不起作用但第二个例子不起作用。我也有其他工厂使用与第一个例子相同的方法,他们工作。我一定错过了什么。
答案 0 :(得分:2)
问题是包装函数末尾缺少一组括号
使用:
public int score = 0;
public int triggerCounter = 0;
void OnTriggerEnter(Collider other)
{
if(other.gameObject.tag == "trigger1")
{
score++;
triggerCounter++;
}
}
void OnTriggerExit(Collider other)
{
if(other.gameObject.tag == "trigger1")
{
triggerCounter--;
}
}
void Update()
{
if(triggerCounter <= 0)
{
score = 0;
triggerCounter = 0; // just for savety
}
}
不起作用:
NODE_EXPR
NODE_INT_LIT
NODE_OPERATOR_PLUS
NODE_INT_LIT
NODE_IF_STMT
NODE_EXPR
NODE_INT_LIT
NODE_OPERATOR_TRUTH_EQ
NODE_INT_LIT
NODE_BODY
NODE_KYWD_RETURN