look for plugins/modules in tns_modules folder not only in the app root + test

This commit is contained in:
Vladimir Enchev
2015-06-29 15:02:19 +03:00
parent 47c77e2a2b
commit db5efc2a8d
2 changed files with 32 additions and 7 deletions

View File

@@ -58,8 +58,19 @@ export function getComponentModule(elementName: string, namespace: string, attri
var moduleId = MODULES[elementName] || UI_PATH + elementName.toLowerCase();
try {
if (types.isString(namespace)) {
var pathInsideTNSModules = fs.path.join(fs.knownFolders.currentApp().path, "tns_modules", namespace);
if (fs.Folder.exists(pathInsideTNSModules)) {
moduleId = pathInsideTNSModules;
} else {
// We expect module at root level in the app.
moduleId = fs.path.join(fs.knownFolders.currentApp().path, namespace);
}
}
// Require module by module id.
instanceModule = require(types.isString(namespace) && fs.path.join(fs.knownFolders.currentApp().path, namespace) || moduleId);
instanceModule = require(moduleId);
// Get the component type from module.
var instanceType = instanceModule[elementName] || Object;