Como usar uma função exportada dentro do módulo local
Esta é a versão em Javascript do que eu quero fazer em Typescript, com o importante a ser a maneira como faço referência a exports.inform a partir da função exports.error ("exports.inform"):
exports.error = function(_string, _kvp){
for(var _i = 0; _i < server.clients.length; _++i){
if(server.clients[_i] != undefined && server.clients[_i].isValid()){
exports.inform(server.clients[_i], _string, _kvp);
}
}
}
exports.inform = function(_client, _string, _kvp){
var _output = tag + processAll(_string, _kvp);
_client.printToChat(_output);
}
Este é o meu equivalente em Typescript, mas "export function inform" está sendo referenciado incorretamente dentro da função 'error' ("inform"):
export function error(_str:string, _kvp:Object) {
for (var _i: number = 0; _i < server.clients.length; ++_i) {
if (server.clients[_i] != undefined && server.clients[_i].isValid()) {
inform(server.clients[_i], _str, _kvp);
}
}
}
export function inform(_client:Entity, _str:string, _kvp:Object) {
var _output = tag + processAll(_str, _kvp);
_client.printToChat(_output);
}
Desculpe pela vaga explicação, espero que você entenda e tente esclarecer se é muito difícil de compreender.
Edit: O erro que estava me dando era 'assinatura de chamada inválida' causada pela execução de concatenações de string dentro do argumento, que aparentemente o TS não permite (a menos que em parênteses fechados), então o comentário de Ryan estava correto:inform
. Obrigado nippan.