如何使用钛中另一个.js文件中的函数/方法?
例如 Utils.js
var db = Titanium.Database.open('myinfodb');
function addIntoDb(name) {
db.execute('INSERT INTO info (name) VALUES(?)', name);
Ti.Ti.API.info(name+' Added to db');
}
function getFromDb() {
var holddatavar = db.execute('SELECT name FROM info');
return holddatavar;
}
db.close();
如何在我当前的js文件中使用它?
答案 0 :(得分:2)
db.js
// creates your database if necessary
var db = Titanium.Database.open('myinfodb');
db.execute('CREATE TABLE IF NOT EXISTS [info] (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT)');
db.close();
var addIntoDb = function(name) {
var db = Titanium.Database.open('myinfodb');
db.execute('INSERT INTO info (name) VALUES(?)', name);
Ti.Ti.API.info(name+' Added to db');
db.close();
}
exports.addIntoDb = addIntoDb; // <=== This exposes the function to another file
// This function would remain accessible only to the file because we didn't export the function
function getFromDb() {
var holddatavar = db.execute('SELECT name FROM info');
return holddatavar;
}
然后你会在其他JavaScript文件中使用它来像这样访问它:
var db = require('/mypath/db'); // NO .js extension on this
db.addIntoDb('Pravin');
答案 1 :(得分:1)
知道了。 只是
Ti.include('/ui/common/Utils.js');
和
Utils.js将
addStudent= function addIntoDb(name) {
var db = Titanium.Database.open('myinfodb');
db.execute('INSERT INTO info (name) VALUES(?)', name);
Ti.API.info(name+' Added to db');
}
getStudent=function getFromDb() {
var db = Titanium.Database.open('myinfodb');
var holddatavar = db.execute('SELECT name FROM info');
return holddatavar;
}
答案 2 :(得分:0)
如果您不使用commonJS,那么您可以简单地包含该文件,我的意思是为此类函数创建一个文件,并将该文件包含在current.js文件中并调用该函数。
答案 3 :(得分:0)
var All = require('ui / common / All');
Tree = require('ui/common/Tree');
EBOM = require('ui/common/E-BOM');
MBOM = require('ui/common/M-BOM');
SBOM = require('ui/common/S-BOM');
//create object instance
var self = Ti.UI.createWindow({
title:'Products',
exitOnClose:true,
navBarHidden:true,
backgroundColor:'#ffffff',
/////////////////////////////////////////////////////////////////////////////
activity: {
onCreateOptionsMenu: function(e) {
var menu = e.menu;
var menuItem = menu.add({ title: "C-BOM", icon: 'Arrow-Hover.jpg' });
//menuItem.setIcon("Arrow-Hover.jpg");
menuItem.addEventListener("click", function(e) {
var all = new All();
self.add(all);
});
(.....)
答案 4 :(得分:0)
最好是将/ lib文件夹中的子文件夹设置为/ Utils,并在/Utils/Utils.js中放置一个文件。
然后在index.js控制器中添加全局变量,如:
Alloy.Globals.Helpers = Ti.include( '/的Utils / Utils.js')
当您这样做时,您的文件现在可以在您制作的任何控制器中访问。 请注意,这适用于Alloy,但对于经典Titanium来说几乎相同。