更改ActionScript的包含路径

时间:2011-03-04 22:52:31

标签: actionscript-3 include-path

我正在开发Flash ActionScript3的自定义库,我有一些函数要添加到Array.prototype

我将扩展名放在库目录中文件夹中的单独.as文件中,但是当我从文档类进行include调用时,它会尝试执行相对于{的{ {1}}文件的位置,而不是库的源路径。

我已经在.fla下添加了Source Path:值的lib路径,该路径适用于我的ActionScript3 Advanced Settings语句。

如何让import路径相对于库的路径?

dir结构:

include

包括不起作用(但应该):

flash/
  lib/libname/inc/array.as
  projectname/project.fla

包括可行,但如果我将项目移动到其他位置则不可移植:

include "libname/inc/array.as";

1 个答案:

答案 0 :(得分:0)

我意识到我是如何调用include指令的。

我已将文档类存储在与.fla文件相同的目录中,因为它是特定于项目的类。文档类包含include指令,但使用扩展Array函数实际的类位于lib/libname内。

include指令移动到需要扩展功能的.as文件,允许相对于调用类的位置调用include指令,这允许我使用{ {1}}因为include "../inc/array.as";文件位于.as

因此问题的答案是,包含路径是相对于调用脚本的位置,不是项目。这意味着库中的任何脚本都可以包含库中的功能而不会出现问题,因为结构将被保留。