我正在尝试找到我遇到的下一个问题的解决方案。我正在尝试通过在项目中使用Amchart3来构建动态字符串,我需要执行以下操作:
return [{
id: 'Rate',
alphaField: 'alpha',
balloonText: function(graphDataItem, graph): String {
let stringNew = 'smth';
return stringNew;
},
}];
我遇到的问题是,在ballonText值中编写的函数未触发(我检查了一个断点),并且在调用使用返回列表的函数时未返回任何内容。
我的问题是,我怎么能写一个像
这样的函数?key: function(a,b) {
return a + b;
}
在Angular 7中,就像在Javascript中一样?
答案 0 :(得分:0)
您的问题是将功能“值”分配给键ballonText
的方式。如果使用es6(可让您缩写键/值名称),则可以像下面这样分配函数:
const es6Assign = {
id: 'Rate',
myFunc(str) {
return str.toUpperCase();
}
}
// prints out HELLO
console.log('calling es6Assign func: ', es6Assign.myFunc('hello'));
如果要以普通方式进行操作,则即使该函数具有键值,也应命名该函数:
const explicitAssign = {
id: 'Rate',
myFunc: function myFunc(str) {
return str.toLowerCase();
}
}
// prints out hello
console.log('calling explicitAssign func: ', explicitAssign.myFunc('HELLO'));
关于为什么?;我的猜测是,即使 you 键是函数的“名称”,但对于代码而言,不存在没有名称的函数,即function() { ... }
将返回{ {1}}。我在示例Fiddle中添加了该案例,以便您了解发生了什么。