4

所以在过去的 3 天里,我每天都在尝试很多小时。我研究到死了,但仍然无法得到它。

目标:

-file1.js 有一个按钮,按下时会调用 file2.js 中的 Main_Menu 方法,并会打开一个由该方法或函数创建的新窗口。

失败的尝试:

-我尝试过 Ti.include 但总是得到一个找不到文件的错误,我尝试将字符串更改为每个可能的路径。

-var file = require(path) 但不能使用文件里面的方法,例如file.Main_Meue,不起作用

我还尝试了许多其他没有想到的事情,但如果有人有任何建议或您需要更多信息,请询问。请帮忙,谢谢

4

3 回答 3

2

第二个答案

像这样创建第二个窗口:

//file1.js
button.addEventListener('click', function()
{
  var secondWindow = Ti.UI.createWindow({
    url:'file2.js'
  });
  secondWindow.open();
});

file1.jsfile2.js通过参数创建一个新窗口urlfile2.js现在是你打电话后的新窗口secondWindow.open()

第一个答案

根据本主题的标题,您可以使用该fireEvent方法。例如:

文件1.js

Ti.App.addEventListener('customEventName', function()
{
  Ti.API.info('function fired from file2.js');
});

文件2.js

Ti.App.fireEvent('customEventName');

http://docs.appcelerator.com/titanium/latest/#!/api/Titanium.Proxy-method-fireEvent

于 2013-06-24T23:50:53.180 回答
1

文件1.js

var toBeExported ={
a : function(){
    //your code goes here 
  }
};
exports.a = toBeExported.a

文件2.js

 var b = require ('file1');
//you can use all the functions that is exported from file1 here.
//you have to create a lib folder or place the file1.js in the existing lib folder for the export/require to work.

希望这会有所帮助。

于 2016-01-12T08:55:18.363 回答
0

这可能是代码结构的问题。基本上,您有三种好方法来执行此操作,具体取决于您使用的版本(实际上是您开始项目的版本:

希望能帮助到你。

于 2013-06-27T14:14:23.920 回答