Titanium Studio-官方教程问题和TSS语法



我已经开始遵循Appcelerator文档中的"创建您的第一个Titanium应用程序"教程,但我遇到了一些问题。

首先,我认为这更多的是医生的问题,但我仍然想确认我没有遗漏什么。在"创建图书详细信息视图"步骤中,它表示要创建一个名为bookdetails的控制器。然而,在所有后续步骤中,它将控制器称为bookview,例如:

var bookview = Alloy.createController("bookview", args).getView();

完全按照教程中所写的方式输入所有内容会导致应用程序错误,说明某个未定义的控制器"bookview",自然地,当将其更改为匹配时,一切都很好(见下文)。

第二,在"修复"了上述问题后,单击一个表行会转到一个新页面,但上面什么都没有,只有一个空白的白色页面。我在调试器中看不到任何问题,而且再次输入的所有内容都与教程中显示的完全一样,甚至只是复制和粘贴。不确定这里发生了什么。

根据我有限的经验,bookview控制器中似乎没有任何内容告诉视图显示提取的变量。bookview.js中唯一的一行是

var args = arguments[0] || {};

它是由Titanium生成的,在教程中没有受到影响。我真的不明白这里发生了什么逻辑。变量arguments在哪里定义?它是由createController函数中第二个参数的参数填充的全局变量吗?即使是这样,视图如何知道在哪里显示以及显示什么?视图是否应该指定类似于具有{title}的索引视图的输出变量?

如果我能搞清楚API,我也许能自己解决这个问题,但我甚至找不到open()之类函数的条目。

最后,我对.tss语法有点困惑。为什么有些定义和其他定义之间用逗号分隔?这是对某些定义进行分组的一种方式吗?目的是什么?

另外,有人知道我是否可以从某个地方下载教程源文件吗?

不幸的是,创建您的第一个Titanium应用程序现在很麻烦(2014年2月20日)。

你可以从这里得到一个工作的例子。

您在一条巨大的消息中提出了多个问题。很难解决所有这些问题,对其他用户也没有用处。下面是一些问题的快速答案,但下次请单独提问。

1.参数

var args = arguments[0] || {}是Alloy中使用特殊JavaScript变量arguments检索传递给控制器的参数的常用方法。链接到MDN文档应该对此进行解释。代码示例:

index.js

Alloy.createController("bookview", { title: "Design Patterns" });

bookview.js

var args = arguments[0] || {};
alert(args.title); // 'Design Patterns'

2.TSS文件

TSS是JSON和CSS文件之间的一个有点疯狂的组合。如果你不确定如何在其中使用逗号,请确保将其放在每一行的末尾。

3.API参考

这里是Alloy API参考。此外,Titanium SDK有很多代码示例,说明如何使用纯钛和合金的不同方法。如果你刚开始学习钛和合金,最好一个接一个地学习所有的钛和合金课程:首先学习它在钛中的工作原理,然后尝试使用合金框架重写整个代码。

最新更新