问题是使用1.28中引入的expression binding来打印当前年份。
Expression Binding能够执行全局可访问的JS函数。
目标:在表达式绑定中执行(new Date())。getFullYear()
window.temp = function() {return 'test'};
并通过<Text text="{:=temp()}" />
=&gt;执行它的失败 <Input value="{:=(new Date()).getFullYear()}" />
打破解析器,并在其中的jsfiddle中取消注释。
错误消息是预期的,但是在第9位看到日期 - {:=(new Date())。getFullYear()} sap.ui.base.ExpressionParser 第一个问题是:为什么解析器会中断?这是一个错误还是我做错了什么?
第二个问题是:即使目标不可行。为什么我的第二次尝试也不起作用?
答案 0 :(得分:1)
我认为解析器会中断,因为它不支持 new 运算符。您的第二个示例不起作用,因为只能使用通过全局符号可用的函数。那里没有列出窗口对象。