合金要求找不到模块

时间:2013-11-19 19:20:34

标签: require commonjs titanium-alloy

问题:在Titanium Alloy中为自定义选项卡组尝试一个简单的演示。但是,编译器会使用消息Could not find module: common继续失败。我认为这是一个简单的测试,不过是。

  • Titanium SDK:3.1.3.GA
  • 操作系统:iOS 7.x

控制器/ index.js

var common = require('common');

function tabGroupClicked(e) {
    common.tabGroupClicked(e);
}

Alloy.Globals.parent = $;
Alloy.Globals.tabGroup = $.tabGroup;
Alloy.Globals.selectedTab = $.tab1;

$.index.open();

控制器/ common.js

exports.tabGroupClicked = function(e){
    if (Alloy.Globals.selectedTab !== e.source){

      // reset the selected tab
        Alloy.Globals.previousTab = Alloy.Globals.selectedTab;
        Alloy.Globals.selectedTab = e.source;

        // change the selected flag
        Alloy.Globals.previousTab.selected = false;
        Alloy.Globals.selectedTab.selected = true;

        // change the background image
        Alloy.Globals.previousTab.backgroundImage = Alloy.Globals.previousTab.disabledImage;    
        Alloy.Globals.selectedTab.backgroundImage = Alloy.Globals.selectedTab.selectedImage;

        // swapping the zindexes of the childTabs
        Alloy.Globals.parent.getView(Alloy.Globals.previousTab.childTab).getView().zIndex=2;
        Alloy.Globals.parent.getView(Alloy.Globals.selectedTab.childTab).getView().zIndex=3;
    }
};

INDEX.XML

<Alloy>

        <Window id="index" class="container">

                <View id="tabGroupWindow" zIndex="0" class="container">
                    <Require src="tabThreeView" id="tabThreeView"/>
                    <Require src="tabTwoView" id="tabTwoView"/>
                    <Require src="tabOneView" id="tabOneView" />
                </View>

                <!-- Custom tab group -->
                <View id="tabGroup">        
                    <View id="tab1" onClick="tabGroupClicked"></View>
                    <View id="tab2" onClick="tabGroupClicked"></View>
                    <View id="tab3" onClick="tabGroupClicked"></View>
                </View>

            </Window>
</Alloy>

任何人都能看到我明显忽视的东西吗?我已经清理了项目,重新启动了Studio,搜索论坛以获取对此问题的任何参考。没有找到参考通常意味着我忘记了一些基本的细节。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

要使用require功能,您必须创建服务。 因此,您{n}注意的common.js模块必须位于此文件夹下:app/lib。如果它不在lib文件夹中,则无法识别,并且不需要它。 您可以在此page找到更多帮助。