留言板
Javascript: funzione ritorna "undefined" la prima volta che viene chiamata
Marco Rosetti,修改在9 年前。
Javascript: funzione ritorna "undefined" la prima volta che viene chiamata
Junior Member 帖子: 68 加入日期: 13-3-6 最近的帖子
Ciao,
ho un problema con il metodo Liferay.provide lato javascript.
Con il codice riportato sotto, la prima volta che clicco sul pulsante TEST il messaggio che ricevo è "Help: undefined" mentre successivamente ottengo il messaggio corretto "Help: test liferay provide"
Il problema non si presenta se, invece di Liferay.provide, utilizzo la dichiarazione standard di funzioni javascript.
Cosa sbaglio? Utilizzo male Liferay.provide?
Grazie,
-MR
ho un problema con il metodo Liferay.provide lato javascript.
Con il codice riportato sotto, la prima volta che clicco sul pulsante TEST il messaggio che ricevo è "Help: undefined" mentre successivamente ottengo il messaggio corretto "Help: test liferay provide"
Il problema non si presenta se, invece di Liferay.provide, utilizzo la dichiarazione standard di funzioni javascript.
<aui:script use="aui-base">
Liferay.provide(
window,
'<portlet:namespace />MYFUNCTION',
function()
{
return 'test liferay provide';
}
)
</aui:script>
<%
String command = "javascript: alert('Hellp: '+"+namespace+"MYFUNCTION())";
%>
<aui:button value="TEST" onClick="<%=command %>" />
Cosa sbaglio? Utilizzo male Liferay.provide?
Grazie,
-MR
Daniele Baggio,修改在9 年前。
RE: Javascript: funzione ritorna "undefined" la prima volta che viene chiam
Expert 帖子: 336 加入日期: 08-12-5 最近的帖子
Ciao,
non mi pare che sia usato male.
Tieni conto che l'esecuzione di Liferay.provide è asincrona e viene eseguita dopo il caricamento della pagina.
Fai clic troppo presto?
non mi pare che sia usato male.
Tieni conto che l'esecuzione di Liferay.provide è asincrona e viene eseguita dopo il caricamento della pagina.
Fai clic troppo presto?
Marco Rosetti,修改在9 年前。
RE: Javascript: funzione ritorna "undefined" la prima volta che viene chiam
Junior Member 帖子: 68 加入日期: 13-3-6 最近的帖子
Ciao,
ho provato anche ad aspettare un po' (5-10 minuti) ma il problema rimane
ho provato anche ad aspettare un po' (5-10 minuti) ma il problema rimane
Daniele Baggio,修改在9 年前。
RE: Javascript: funzione ritorna "undefined" la prima volta che viene chiam
Expert 帖子: 336 加入日期: 08-12-5 最近的帖子
Dunque, facciamo una prova.
Non hai bisogno di <aui:script use="aui-base"> in questo caso, basta <aui:script>.
Se la tua funzione ha bisogno di moduli devi usare il quaerto parametro di Liferay.provide.
Non hai bisogno di <aui:script use="aui-base"> in questo caso, basta <aui:script>.
Se la tua funzione ha bisogno di moduli devi usare il quaerto parametro di Liferay.provide.
Marco Rosetti,修改在9 年前。
RE: Javascript: funzione ritorna "undefined" la prima volta che viene chiam
Junior Member 帖子: 68 加入日期: 13-3-6 最近的帖子
Stesso problema anche togliendo il parametro "use".
Daniele Baggio,修改在9 年前。
RE: Javascript: funzione ritorna "undefined" la prima volta che viene chiam
Expert 帖子: 336 加入日期: 08-12-5 最近的帖子
Scusa ma solo ora ho capito bene l'uso che fai della funzione!
L'esecuzione delle funzioni fatte con Liferay.provide è asincrona e non ha senso usare il paramentro di ritorno.
La parte corretta del tuo caso è il ritorno di underfined, mentre quando ti torna un valore credo sia un effetto collaterale, un caso.
L'esecuzione delle funzioni fatte con Liferay.provide è asincrona e non ha senso usare il paramentro di ritorno.
La parte corretta del tuo caso è il ritorno di underfined, mentre quando ti torna un valore credo sia un effetto collaterale, un caso.
Marco Rosetti,修改在9 年前。
RE: Javascript: funzione ritorna "undefined" la prima volta che viene chiam
Junior Member 帖子: 68 加入日期: 13-3-6 最近的帖子
Ok ho capito.
Quindi per usare funzioni che ritornano un valore devo per forza dichiararle nel modo "classico" o c'è qualche utilità di Liferay?
Grazie
Quindi per usare funzioni che ritornano un valore devo per forza dichiararle nel modo "classico" o c'è qualche utilità di Liferay?
Grazie