Appraterator Titanium中$ tag的含义是什么

时间:2017-07-06 21:47:21

标签: titanium appcelerator titanium-mobile

Appraterator中的$ tag是什么意思?当我在任何controller.js中使用此标记时,它可以工作。但是当我在libs js文件中使用它时,我得到了错误。

$.resetClass(someController, 'someClass')

1 个答案:

答案 0 :(得分:3)

$ tag是控制器文件的持有者。它由每个控制器文件的Titanium自动生成。

假设你有这些文件集: 1 - index.xml,index.js,index.tss 2 - win.xml,win.js,win.tss 3 - dialog.xml,dialog.js,dialog.tss

因此,$可用于每个.js文件&这是由同样的东西:

<强> dialog.js

var dollar = Alloy.createController('win');
// now dollar is exactly equal to ($ in win.js) & so does for other .js files.

在win.xml中,假设您有一个最顶层的窗口或视图,其id ='topView'&amp;一些内部子视图可以说有ids = view1,view2等...

<强> win.xml

<Alloy>
 <View id='topView'>
   <View id='view1'>
     <View id='view2'></View>
   </View>
 </View>
</Alloy>

现在在win.js文件中,您可以访问这些视图ID,例如$ .topView,$ .view1,$ .view2&amp;等等...

<小时/> 最后在 var dollar 代码中,您可以从任何其他js文件中访问这些ID,如下所示:

var topView = dollar.topView;
var view1 = dollar.view1;
var view2 = dollar.view2;

要详细说明,假设您想要将某些功能从控制器导出到任何其他控制器,您可以这样做:

<强> win.js

$.methodNameToAccess = function () {alert('Kerberos!')};

这是导出方法的神奇之处

<强> dialog.js

dollar.methodNameToAccess();    // alerts your name :)

这是$是什么的基本指南,它超越了...所以现在你的任务是探索它&amp;有效地使用它。

代码强!