Как поместить вложенную функцию actionscript в проекте actionscript в отдельный файл actionscript? - PullRequest
1 голос
/ 11 ноября 2011

Я использую Flash Builder 4.5.В файле .mxml, если вы хотите использовать функцию actionscript, находящуюся во внешнем файле .as, просто добавьте в файл .mxml:

<fx:Script source="filename.as"/>

, где filename.as содержит функцию actionscript (s).).

Есть ли способ сделать подобное из файла проекта .as?То есть у меня есть проект actionscript, созданный в Flash Builder 4.5 (например, нигде нет файлов .mxml), и у меня есть вложенная функция actionscript.Как я могу поместить эту вложенную функцию actionscript во внешний файл, а затем вызвать ее из исходного файла?Моя цель - сделать так, чтобы вложенная функция actioncript вызывалась из нескольких других файлов, поэтому мне не нужно вкладывать ее несколько раз.

Ответы [ 2 ]

2 голосов
/ 11 ноября 2011

Самый простой способ сделать это - использовать статическую функцию.Создайте файл класса AS и удалите конструктор.Теперь поместите вашу функцию в нее и установите тип "public static", вот пример простого класса "утилиты stirng".

package some.place.inyourapp
{   
  public class StringUtils 
  {

    public static function contains( string:String, searchStr:String ):Boolean
    {
        var regExp:RegExp = new RegExp( searchStr, "i" );           
        return regExp.test( string );           
    }
  }
}

Теперь вы можете вызывать эту функцию, не создавая экземпляр класса где-либо вВаше приложение, говоря:

StringUtils.contains("this is cool","cool")

Конечно, StringUtils должен быть импортирован

import some.place.inyourapp.StringUtils

0 голосов
/ 11 ноября 2011

Хотя это и не рекомендуется, вы можете использовать оператор include.

...
include "myFile.as";
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...