【问题标题】:How to access a js file from another js file in titanium studio android project如何从钛工作室android项目中的另一个js文件访问一个js文件
【发布时间】:2013-06-09 01:26:15
【问题描述】:

我是钛工作室和工作合金 mvc 框架的新手。我在控制器文件夹中放置了两个 js 文件。一个是 index.js(项目创建时自动创建)和 home.js。现在我想在 index.js 的按钮事件上打开 home.js(比如从 eclipse android 应用程序中的另一个活动开始一个新活动)。这是我的代码:

index.js:

function login_Click(e){
    Ti.include('home.js');
    hello();
}       

$.index.open(); 

其中 login_click(e) 是一个按钮 onClick 事件。

还有 home.js:

function hello(){
    //$.home.open();
    alert("Opened");
}
//exports.hello = hello;

但每当我运行它并单击按钮时,它都会出现错误

位置:[25,1]alloy/controllers/home.js

按摩:未捕获的引用错误:模块未定义

来源:*module.export=controller;

这是我的合金/控制器/home.js:

function Controller() {
    require("alloy/controllers/BaseController").apply(this, Array.prototype.slice.call(arguments));
    arguments[0] ? arguments[0]["__parentSymbol"] : null;
    arguments[0] ? arguments[0]["$model"] : null;
    var $ = this;
    var exports = {};
    $.__views.home = Ti.UI.createWindow({
        backgroundColor: "white",
        id: "home"
    });
    $.__views.home && $.addTopLevelView($.__views.home);
    $.__views.label = Ti.UI.createLabel({
        text: "Hell Yeah",
        id: "label"
    });
    $.__views.home.add($.__views.label);
    exports.destroy = function() {};
    _.extend($, $.__views);
    $.home.open();
    _.extend($, exports);
}

var Alloy = require("alloy"), Backbone = Alloy.Backbone, _ = Alloy._;

module.exports = Controller;

请帮帮我。我尝试了 require() 方法。我尝试使用 $.home.open(); 直接打开但没有任何效果。我需要做什么????提前谢谢....

【问题讨论】:

    标签: android model-view-controller titanium titanium-alloy


    【解决方案1】:

    您必须使用 Alloy 来执行此操作,打开 Home 控制器视图只需执行以下操作:

    function login_Click(e){
        var homeController = Alloy.createController('home');
        // If home.xml's container is a Window this will work
        homeController.getView().open();
    }
    

    【讨论】:

      【解决方案2】:

      或者,如果您尝试在不同的文件中调用其他 js 文件的方法,则需要导出该函数才能使用它。 例如:

      home.js

      exports.myFunction  = function(){
          alert("I am in");
      }
      

      index.js

      var home = require("home");
      home.myFunction();
      

      你去吧。

      【讨论】:

        猜你喜欢
        • 2020-08-25
        • 2011-10-06
        • 2018-09-26
        • 1970-01-01
        • 2022-01-22
        • 1970-01-01
        • 1970-01-01
        • 2015-05-17
        • 1970-01-01
        相关资源
        最近更新 更多