这是我想在Typescript中做的Javascript版本,重要的是要注意我从exports.error函数引用exports.inform的方式(" 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);
}
这是我在Typescript中的等价物,但&#34;导出功能告知&#34;在函数&#39;错误&#39;中被错误地引用(&#34;通知&#34):
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);
}
对于模糊的解释感到抱歉,我希望你理解,并会尽力澄清它是否难以理解。
编辑:它给我的错误是“无效的通话签名”#39;通过在参数内执行字符串连接而导致TS显然不允许(除非在闭括号中),所以Ryan的评论是正确的:只需调用inform
。谢谢Nypan。
答案 0 :(得分:1)
我不完全确定我理解你的问题或你想要做什么。但如果我正确理解你,以下内容应该有效:
module exports {
export function error(message: string){
inform(message);
}
export function inform(message: string) {
alert(message);
}
}
exports.error("some message");
最好将函数放在这样的类中:
class exports {
public static error(message: string) {
exports.inform(message);
}
public static inform(message: string) {
alert(message);
}
}
exports.error(“some message”);
我可能会误解你要做的事情。让我知道。