2016-08-29 4 views
2

Я работаю над настройкой для одного из приложений Maximo Anywhere, построенного на платформе IBM MobileFirst.Не удается вызвать функцию JavaScript из того же файла

Я внедрил пользовательский файл JavaScript и могу вызвать функции непосредственно через app.xml. Однако я не могу вызывать функции, содержащиеся в этом файле, из других функций JavaScript. Вы не можете так звонить? Любая помощь будет оценена.

См. Приведенный ниже пример. Это вызовет вызов функции retNewVal из функции callFromApplication.

упрощенный пример:

callFromApplication: function(eventContext){ 
    var selectedResource = eventContext.getResource().getCurrentRecord(); 
    var val1 = 5 
    var val2 = retNewVal(val1); 
    selectedResource.set('property1', val1); 
    selectedResource.set('property2', val2);  
}, 

retNewValue : function(val){ 
    return val * 2; 
}, 

Спасибо!

+0

Что такое сообщение об ошибке, когда он терпит неудачу? – Arjun

+0

Добро пожаловать в переполнение стека. Вы можете улучшить свой вопрос. Пожалуйста, прочитайте [Минимальный, Полный и Подтверждаемый пример] (http://stackoverflow.com/help/mcve). Когда ваш код показывает вашу точную проблему ни с чем лишним, вы проявляете уважение к тем, кто добровольно помогает вам. – zhon

ответ

4

Мне кажется, что вы вызываете функцию retNewValue из определения объекта.

попробовать добавить this. перед ним, чтобы обеспечить охват надлежащим образом поддерживается

var obj = { 
    func1notworking: function() { 
     func2("Doesn't Work"); 
    }, 
    func1working: function() { 
     this.func2("Works"); 
    }, 
    func2: function(output) { 
     alert(output); 
    } 
}; 

//obj.func1notworking(); 
obj.func1working(); 

JsFiddle

 Смежные вопросы

  • Нет связанных вопросов^_^