Ошибка внешнего интерфейса
-
22-07-2019 - |
Вопрос
Это код, который я использую для вызова функции calc
в javascript:
import flash.external.ExternalInterface;
ExternalInterface.addCallback("asFunc", this, asFunc);
function asFunc(str:String):Void {
out.text = "JS > Hello " + str;
}
send_btn.addEventListener(MouseEvent.CLICK, clickListener);
function clickListener(eventObj:Object):Void {
trace("click > " + mean.text);
ExternalInterface.call("calc", mean.text);
}
но я получаю следующую ошибку:
1046: Тип не найден или не является константой времени компиляции: Void.
Что я здесь не так делаю? (Я изменил пример на живых документах.)
Решение
Void должен быть в нижнем регистре.
Вот так:
void
Другие советы
Похоже (по вашей ошибке) у вас здесь есть пара проблем:
<Ол>Итак, предположим, что ваш код JavaScript был примерно таким:
function myJSFunction()
{
myFlashObject.asFunc("Hello!");
}
function calc(s)
{
// ...
}
... ваш соответствующий код ActionScript 3 должен выглядеть примерно так:
import flash.external.ExternalInterface;
function myInitializationHandler():void
{
ExternalInterface.addCallback("asFunc", asFunc);
myFlexButton.addEventListener(MouseEvent.CLICK, clickListener);
}
function asFunc(str:String):void
{
//...
}
function clickListener(event:MouseEvent):void
{
// ...
ExternalInterface.call("calc", myFlexTextInput.text);
}
Имеет смысл?
Не связан с StackOverflow