Javascript 不理解钛合金控制器中$.variableName=functionName的含义
我试图用Appcelerator钛合金来模拟活动指示器模块。 它工作得很好,但我不理解2条线的工作原理 activityIndicator.jsJavascript 不理解钛合金控制器中$.variableName=functionName的含义,javascript,appcelerator-titanium,titanium-alloy,Javascript,Appcelerator Titanium,Titanium Alloy,我试图用Appcelerator钛合金来模拟活动指示器模块。 它工作得很好,但我不理解2条线的工作原理 activityIndicator.js $.hide=hide;// $读取名为$的变量的值 .hide(假设该值是一个对象,否则将是一个错误)访问名为hide的属性 =hide获取本地hide变量的值(该变量是同名函数,由于使用函数声明创建而被提升)并将其分配给该属性 下一行以同样的方式工作,只是在不同名称的事物上 我不明白的是,这两行代码是如何使隐藏和显示功能变得可访问的 要么: 在
$.hide=hide;//
$
读取名为$
的变量的值
.hide
(假设该值是一个对象,否则将是一个错误)访问名为hide
的属性
=hide
获取本地hide
变量的值(该变量是同名函数,由于使用函数声明创建而被提升)并将其分配给该属性
下一行以同样的方式工作,只是在不同名称的事物上
我不明白的是,这两行代码是如何使隐藏和显示功能变得可访问的
要么:
- 在代码的第一位中作为
$
变量值的对象与后面作为$值的对象相同。loadIndicator
- 其他一些代码再次复制了这些函数
这两行的可能等价代码是什么
为什么需要做相同事情的不同代码
$
读取名为$
的变量的值
.hide
(假设该值是一个对象,否则将是一个错误)访问名为hide
的属性
=hide
获取本地hide
变量的值(该变量是同名函数,由于使用函数声明创建而被提升)并将其分配给该属性
下一行以同样的方式工作,只是在不同名称的事物上
我不明白的是,这两行代码是如何使隐藏和显示功能变得可访问的
要么:
- 在代码的第一位中作为
$
变量值的对象与后面作为$值的对象相同。loadIndicator
- 其他一些代码再次复制了这些函数
这两行的可能等价代码是什么
为什么需要做相同事情的不同代码
在Appceleraor的wiki上找到答案:
小部件控制器中的所有方法都是私有的,除非在方法前面加上$,这使Alloy项目和其他小部件可以访问该方法。例如,如果在小部件控制器中定义了以下代码:
$.init = function (args) {
// Button object with id=button
$.button.title = args.title || 'Si';
$.button.color = args.color || 'black';
// global variable
message = args.message || 'Hola mundo';
}
然后,在Alloy项目中,调用以Alloy项目视图中指定的小部件ID为前缀的init——在本例中,ID为foo:
$.foo.init({title:'Yes', color:'gray', message:'I pity the foo.'});
在Appceleraor的wiki上找到答案:
小部件控制器中的所有方法都是私有的,除非在方法前面加上$,这使Alloy项目和其他小部件可以访问该方法。例如,如果在小部件控制器中定义了以下代码:
$.init = function (args) {
// Button object with id=button
$.button.title = args.title || 'Si';
$.button.color = args.color || 'black';
// global variable
message = args.message || 'Hola mundo';
}
然后,在Alloy项目中,调用以Alloy项目视图中指定的小部件ID为前缀的init——在本例中,ID为foo:
$.foo.init({title:'Yes', color:'gray', message:'I pity the foo.'});
谢谢您的语法解释,但我不明白的是,如何将属性设置为$来访问其他控制器中的隐藏函数。美元在这里指的是什么在Tianium AppCelerator中,我向您提供语法解释,但我不理解的是,如何将属性设置为$可以访问其他控制器中的隐藏函数。美元在这里指的是什么在钛加速计方面