#ruby-on-rails #actionscript-3
#ruby-on-rails #actionscript-3
Вопрос:
Я узнаю о работе с вложениями модели RestfulX, перейдя по этой ссылкеhttp://dima.github.com/2009/03/19/working-with-restfulx-model-attachments.html
Но я получил ошибку, когда нажал, чтобы прикрепить файл.
Ошибка типа #1034: сбой принудительного ввода: не удается преобразовать flash.net::FileReference@34f1d99 в org.restfulx.utils.RxFileReference. в rxmodelattachments.components.generated::ContactBox/fileSelected()[C:DataWorkspacerx_model_attachmentssrcrxmodelattachmentscomponentsgeneratedContactBox.mxml:88 ] в rxmodelattachments.components.generated::ContactBox/selectFile()[C:DataWorkspacerx_model_attachmentssrcrxmodelattachmentscomponentsgeneratedContactBox.mxml:80]
Я думаю, из-за RxFileReference в этих строках кода
частный файл var:RxFileReference; частная функция chooseFile():void { file = новая ссылка RxFileReference(«аватар»); файл.ссылка.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler, false, 0, true); файл.ссылка.addEventListener (событие.ВЫБЕРИТЕ, selectFile, false, 0, true); файл.ссылка.addEventListener (событие.ОТМЕНА, cancelBrowse, false, 0, true); файл.reference.browse(); }
P.S. по ссылке вы увидите, что они используют file.addEventListener, что невозможно. Поскольку в RxFileReference нет метода addEventListener. Поэтому мне нужно использовать .reference, чтобы разрешить мне использовать метод addEventListener. Как решить эту проблему. Спасибо.
Ответ №1:
Я думаю, у вас не обновлена функция chooseFile
Вы используете
file.reference.addEventListener(..);
в то время как ссылка имеет
file.addEventListener(..);
Полная функция приведена по ссылке, указанной в вопросе
private function chooseFile():void {
file = new RxFileReference("avatar");
file.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler, false, 0, true);
file.addEventListener(Event.SELECT, selectFile, false, 0, true);
file.addEventListener(Event.CANCEL, cancelBrowse, false, 0, true);
file.browse();
}
Надеется, что это поможет
Комментарии:
1. Ах, да.. На самом деле, если я напрямую использую в качестве ссылки. Возникает ошибка, из-за которой отсутствует метод addEventListener. Итак, мне нужно поместить .reference в use .addEventListener
2. я думаю, вам нужно получить последнюю версию библиотеки, если все еще не работает! исправьте ошибку на этой стороне, потому что, по крайней мере, пример должен работать как есть.