Отключить предупреждение только в одном месте - PullRequest
3 голосов
/ 26 января 2011

в коде MXML

<fx:Script>
   public var data:ArrayCollection = new ArrayCollection();
</fx:Script>
<s:DataGroup dataProvider="{data}" />

Я получаю предупреждение:

Привязка данных не сможет обнаружить назначения для «данных»

Я знаю, что в этом случае поставщик данных никогда не изменится, и хочу в этом случае отключить это предупреждение, но я не хочу полностью его отключать, -show-binding-options=false во всех проектах не вариант.

Как отключить предупреждение только в одном месте? Отключение для всего файла не очень хорошо, но приемлемо.

Ответы [ 2 ]

2 голосов
/ 26 января 2011

Как насчет просто сделать вашу переменную data привязываемой?Что-то вроде:

<fx:Script>
   [Bindable]
   public var data:ArrayCollection = new ArrayCollection();
</fx:Script>
<s:DataGroup dataProvider="{data}" />
0 голосов
/ 30 августа 2012

Вместо использования <fx:Script></fx:Script> вы можете использовать <fx:Declarations></fx:Declarations>.Любой объект, объявленный в этом элементе MXML, является неявно привязываемым.Вот так будет выглядеть ваш код:

<fx:Declarations>
    <s:ArrayCollection id="data" />
</fx:Declarations>

<s:DataGroup dataProvider="{data}" />

Кроме того, он становится намного более читабельным, и в нем отсутствует сочетание ActionScript и MXML.Поскольку ваша коллекция объявлена ​​как общедоступная, не имеет значения, использовать ли ActionScript с [Bindable] или использовать MXML.

Кстати, общая рекомендация для более чистого кода - полностью отделить ActionScript от MXML.Например, в моих проектах я создаю отдельный файл ActionScript для каждого компонента MXML в форме <NameOfComponent>Includes.as.

...