Okay, I figured out how to make VSCode switch to JS APIs instead of SWF
APIs for completion and things. In the next version of the extension, when
the targets compiler option is specified in asconfig.json, and the first
value isn't "SWF", the extension will offer JS APIs. That includes giving
you access to native browser APIs instead of Flash Player APIs. That's
going to be a really nice change, I think. Thanks for pointing out this
issue!

- Josh

On Thu, Jul 6, 2017 at 2:35 PM, Josh Tynjala <joshtynj...@gmail.com> wrote:

> > The js-output-type, library-path and external-library-path options are
> probably not needed
>
> I would get rid of -js-output-type. I assume that -targets takes
> precedence, but just to be safe, you shouldn't use both. -js-output-type is
> necessary for 0.7.0, but switch entirely to -targets with 0.8.0.
>
> > It would be nice to have full support for the new compiler options
>
> html-template, html-output-filename, js-compiler-option,
> js-external-library-path, js-library-path, swf-external-library-path,
> swf-library-path, and remove-circulars should all work in the
> compilerOptions field if you're using the latest vscode-nextgenas 0.4.4 and
> asconfigc 0.5.1. I just updated asconfigc to support these options last
> week, and I haven't made an official announcement yet, so you might have
> missed that one.
>
> I think there may be one or two you'll still need to put into
> additionalOptions, but you should be able to switch over most of them.
>
> > 1. I’m getting “problems” even for files which are not used in my
> project and are not open.
>
> This is something I'm aware of in VSCode. The compiler seems to greedily
> load everything that exists in a source path, even if you don't actually
> use it. Personally I like this, but even if I were to make it an option
> somehow, I'm not aware of a way to stop the compiler from working that way
> either.
>
> > 2. I’m getting lots of errors which are specific to SWF-only output:
>
> I just glanced through the part of VSCode that passes options to the
> compiler for code intelligence (different from the way that asconfigc runs
> the compiler to build), and I don't think I'm actually using the value of
> -targets. It's probably defaulting to SWF. I'll play around with that to
> see if I can improve things when -targets is specifically JSFlex.
>
> >   a. I’m not getting JS specific classes recognized.
>
> Just to be clear, are you referring to DOM classes like HTMLButtonElement
> and other browser APIs here? I just want to be sure so that I test the
> right thing when I make changes.
>
> - Josh
>
> On Thu, Jul 6, 2017 at 2:16 PM, Harbs <harbs.li...@gmail.com> wrote:
>
>> Since updating to “dual”has been reporting lots of errors. When I build,
>> both the debug and release builds build correctly, but the PROBLEMS window
>> and the live code hinting report lots of (non) issues. I’m not sure what
>> the source of the errors are, but here are the details:
>>
>> I’ve tried a few variations of the asconfig file, but here’s what I
>> currently have:
>> {
>>     "config": "flex",
>>     "compilerOptions": {
>>         "debug": true,
>>         "js-output-type": "flexjs",
>>         "targets": ["JSFlex"],
>>         "source-map": false,
>>         "library-path": [
>>             "lib"
>>         ],
>>         "external-library-path": [
>>         "typedefs"
>>         ]
>>     },
>>     "copySourcePathAssets": true,
>>     "additionalOptions": "-remove-circulars 
>> -js-output-optimization=skipAsCoercions
>> -html-template=src/resources/mdl-js-index-template.html
>> -js-external-library-path+=typedefs -js-library-path+=lib",
>>     "files":
>>     [
>>         "src/PortedPrintUI.mxml"
>>     ]
>> }
>>
>> The js-output-type, library-path and external-library-path options are
>> probably not needed, but they don’t seem to adversely effect the builds.
>> (It would be nice to have full support for the new compiler options.)
>>
>> Problems:
>> 1. I’m getting “problems” even for files which are not used in my project
>> and are not open.
>> 2. I’m getting lots of errors which are specific to SWF-only output:
>>   a. I’m not getting JS specific classes recognized.
>>   b. I’m getting lots of incompatible overrides (to Flash methods)
>>   c. I’m getting overriding function not marked for override errors on
>> functions that are implemented in flash (i.e. public function get
>> scaleX():Number)
>>   d. conflicts between variables and Flash getters.
>>   e. etc...
>>
>> Thanks,
>> Harbs
>
>
>

Reply via email to