首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AS3:-warn- Scoping change-in-this的作用域问题

AS3:-warn- Scoping change-in-this的作用域问题
EN

Stack Overflow用户
提问于 2013-02-22 17:58:28
回答 2查看 137关注 0票数 0

我想在Flex中启用所有编译器警告,以便在我的代码中解决它们。但是有一个警告,我想不出如何解决它。下面是一些示例代码:

代码语言:javascript
复制
package lib
{
    import flash.events.NetStatusEvent;
    import flash.net.NetConnection;

    public class player
    {
        private function tmp(event:NetStatusEvent):void
        {
        }

        public function player():void
        {
            super();
            var connection:NetConnection = new NetConnection();
            connection.addEventListener(NetStatusEvent.NET_STATUS, tmp);
        }
    }
}

在使用-warn-scoping change-in-this进行编译时,我收到以下警告:

代码语言:javascript
复制
/var/www/test/src/lib/player.as(16): col: 59 Warning: Migration issue: Method tmp will behave differently in ActionScript 3.0 due to the change in scoping for the this keyword. See the entry for warning 1083 for additional information.

            connection.addEventListener(NetStatusEvent.NET_STATUS, tmp);

将tmp作为函数放在player()中将会起作用,但这不是我想要的。我甚至尝试过使用this.tmp作为回调,但没有区别。有人知道如何解决这个编译器警告吗?

EN

回答 2

Stack Overflow用户

发布于 2013-02-22 18:01:58

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/compilerWarnings.html

这是一个代码迁移警告。此警告在对象的方法用作值时生成,通常用作回调函数。在ActionScript 2.0中,函数是在调用它们的上下文中执行的。在ActionScript 3.0中,函数始终在定义它们的上下文中执行。因此,变量和方法名称被解析为回调所在的类,而不是相对于从中调用回调的上下文,如下例所示:

代码语言:javascript
复制
class a 
{ 
   var x; 
   function a() { x = 1; } 
   function b() { trace(x); } 
}

var A:a = new a();
var f:Function = a.b; // warning triggered here
var x = 22;
f(); // prints 1 in ActionScript 3.0, 22 in ActionScript 2.0
票数 1
EN

Stack Overflow用户

发布于 2013-02-22 18:36:02

放置该警告的目的只是为了让您知道,在将代码从AS2迁移到AS3时,代码的行为可能已经发生了变化(编译器事先无法知道)。在将代码从迁移到AS3时,应该仅启用编译器选项 -warn-scoping-change-in-this

所以,正如我在评论中所说的,你不应该担心这个警告,因为很明显你的代码不是你的情况,你不需要启用编译器选项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15021415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档