现在我的alloy.js
文件中有一个全局的函数。
Alloy.Globals.indicator = function(parent)
{
var view = Ti.UI.createView({
width: '100%',
height: '100%',
backgroundColor: '#000',
opacity: 0.6,
visible: false
});
function osIndicatorStyle()
{
style = Ti.UI.iPhone.ActivityIndicatorStyle.PLAIN;
if ('iPhone OS' !== Ti.Platform.name) style = Ti.UI.ActivityIndicatorStyle.DARK;
return style;
};
var activityIndicator = Ti.UI.createActivityIndicator({
style: osIndicatorStyle(),
height: Ti.UI.FILL,
width: 100
});
view.add(activityIndicator);
parent.add(view);
function openIndicator()
{
view.visible = true;
activityIndicator.show();
}
view.openIndicator = openIndicator;
function closeIndicator()
{
activityIndicator.hide();
view.visible = false;
}
view.closeIndicator = closeIndicator;
return view;
};
我不希望将这个大型功能作为全局功能,而是使用require
将其导入我需要的文件。
我已经搜索过,无法弄清楚,在哪里放置这个文件,第二个如何实际"要求"它。
所有这一切只是创建一个视图,充当带有活动指示器的模态视图。该功能还包括两个显示和隐藏它的功能。
答案 0 :(得分:2)
创建一个名为" lib"的文件夹。在" app"内文件夹中。
在此文件夹中,创建一个名为“ functions.js:
var functionName = function(){
//your function code here
}
exports.functionName = functionName;
在您的控制器中:
var functions = require('functions');
functions.functionName();
您可能还想查看Widgets哪些是可重复使用的组件以及视图/控制器/样式,因为我认为这会更符合您的要求。