Appcelerator Titanium 中的 $ 标签是什么意思

What does $ tag mean in Appcelerator Titanium

$标签在Appcelerator中是什么意思?当我在任何 controller.js 中使用此标签时,它都有效。但是当我在 libs js 文件中使用它时出现错误。

$.resetClass(someController, 'someClass')

$ 标签是控制器文件的持有者。它由 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 中,假设您有一个最顶层的 Window 或 id='topView' 的视图,并且一些内部子视图可以说具有 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 等等...


最后在 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 :)

这是什么是 $ 的基本指南,它不止于此.. 所以现在您的任务是探索它并有效地使用它。

代码强!