我不明白为什么这不打印实际的sum (=3),而是输出源代码
组件
import Component from '@ember/component';
export default Component.extend({
message: function(){
let sum = 1+2
return sum
}
})
模板
{{message}}
这将以字符串的形式打印源代码!
sum函数() { let
=1+ 2;return sum;}
发布于 2018-06-11 15:26:19
您要查找的内容称为computed property:
import { computed } from '@ember/object';
import Component from '@ember/component';
export default Component.extend({
message: computed(function(){
let sum = 1 + 2;
return sum
})
});
发布于 2018-06-10 06:08:03
在将函数赋值给message
之前,您需要运行该函数。您可以通过预先定义函数并像这样调用它来实现:
export default Component.extend({
function a(){
let sum = 1+2
return sum
}
message: a();
})
或者,您可以使用immediately invoked function express方法立即调用该函数,方法是将该函数括在括号中,然后立即调用它,如下所示:
export default Component.extend({
message: (function(){
let sum = 1+2
return sum
})();
})
https://stackoverflow.com/questions/50778817
复制相似问题