包含/导入单独的AS3文件

时间:2013-04-16 09:59:02

标签: actionscript-3 import include string-literals braces

我想在我的flash应用程序中包含一个.as文件。我确定这并不困难,我只是稍微有些不对劲,但在我的代码的顶部,我总是这样说:

include {"Le Bot src/Skill.as";}

OR

import {"Le Bot src/Skill.as";}

尝试包含一个单独的.as文件。但是,当我使用include时,它会出现错误: 期待左支撑之前的字符串 当我使用'import'时,它会出现错误:

expecting identifier before left brace 
expecting semicolon before left brace

我只是AS3的初学者,有什么方法可以解决这个问题吗? 顺便说一句,如果我删除两侧的两个支架,那么它会出现另一个错误

3 个答案:

答案 0 :(得分:3)

import locationOfASFile.Skill;

e.g。如果您的Skill.as文件位于名为'LeBotsrc'的目录中,该目录位于名为'com'的目录中

import com.LeBotsrc.Skill;

此外,您的套餐需要反映它的位置。所以在Skill.as里面你会有

package com.LeBotsrc {

答案 1 :(得分:1)

在AS3中使用include指令并不多,因为使用包和类组织代码很容易。然而,inlcude有一个奇怪的事情。 没有结尾分号。 试试这个:

include "Le Bot src/Skill.as"

总结一下: include与import不同。 include不使用花括号。 包括绝不能在行尾添加分号。 inlcude必须在以下格式的一行上:

include "pathto/myfile.as"

使用include会将指定文件中的actionscript添加到使用include的时间轴。 您还可以通过设置扩展主时间轴或库中符号的文档类来完成相同的操作。这样做增加了需要使用类的复杂性,但是类包含的功能和灵活性足以弥补其额外的复杂性。

例如,使用include,您不能将函数或变量指定为public或private。他们都是公开的。使用类可以更容易地使代码面向对象,这是使项目更加友好的好方法。

答案 2 :(得分:0)

首先应该从项目文件夹中通过正确的相对路径(Le Bot src\Skills.as)访问package\name\class.as,然后执行import package.name.class,在此处放置值而不是占位符。说,你调查Skill.as并找出:

package foo.bar {
    import baz.*
    ...
    public class Skill {

这意味着AS文件应位于foo\bar\Skill.as,其中foo文件夹应位于FLA所在的文件夹中。在FlashDevelop的情况下,它应该在src文件的*.as3proj内。把它放在那里,然后添加:

import foo.bar.Skill;

到您要引用此类的任何文件或时间轴。