Сплав и требуют внешнего JS
Прямо сейчас у меня есть функция в моем 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
,
Я искал и не могу понять, во-первых, где разместить этот файл, а во-вторых, как на самом деле "требует" его.
Все это просто создает представление, которое действует как модальное представление с индикатором активности. Функция также включает в себя две функции, чтобы показать и скрыть его.
1 ответ
Создайте папку с именем "lib" внутри папки "app".
Внутри этой папки создайте файл, который называется как угодно, например functions.js:
var functionName = function(){
//your function code here
}
exports.functionName = functionName;
В вашем контроллере:
var functions = require('functions');
functions.functionName();
Возможно, вы также захотите взглянуть на виджеты, которые представляют собой повторно используемые компоненты в комплекте с view/controller/styles, так как я думаю, что это немного лучше соответствует вашим требованиям.