Need help with TS build

UPDATE
I had to get rid of a single whitespace that was in the wrong place according to the compiler! That might have fixed it. Gotta get in the habit of reading the CLI >_<…

found the answer to this question

" Edit Code

Once the test task (gulp run) has been launched, any saved changes in the Typescript or shader files will automatically rebuild the associated Javascript files. Simply refresh your browser to see the changes in effect and begin to debug your new code.

Hint : You may need to refresh the code before adding back a new breakpoint."

for some reason this seems to not be working when I make changes to the new ts file I added…
I must be missing a simple step.

if it is a new file created AFTER launching gulp run you need to restart it so it will see that new file

I did all that, and for some reason its not exposing the new method in any of the build files that I see?

:slight_smile: as soon as I figure this out, Ill send over the PR for the STL exporter!

@Deltakosh, the really odd thing is when I launch the playground on my local environment after a build, and I start trying to use the method it will code complete for me and act like its a method, but then as soon as I try to call it, it says that method does not exist.

I looked at the http://localhost:1338/.temp/localDevUMD/serializers/babylonjs.serializers.js
and it seems that the function is there… It just does not ever seem to be under the BABYLON.STLExport scope in reality.

Start a PR so I can see what could be wrong

1 Like

The exporters are in a separate repo, can you just use npm link or yarn link to bring your latest into main repo live coding?

Ill look up npm link. thank you!

So I am still under the impression my addition did not work and am kinda confused. The code prediction comes up and gives all the correct information, but if you look at the console output here it says these things do not exist.

The live playground is doing just like my localhost was doing. Ill check again in the morning, but I doubt I don’t see any reason for it to start working.

I checked again this morning to make sure that it did not build after I went to bed.

Looks like it does not exist as a method under the BJS scope at all, but the auto fill on the code hinting works, so something partially worked?

@brianzinn Is that something that I fix with npm link?

No, sorry - that was not a helpful comment as I thought you were working on another repo when you said exporters. The local playground is getting it’s config from here, which has the serialisers registered:
https://github.com/BabylonJS/Babylon.js/blob/master/Tools/Config/config.json

I think deltakosh might have put in a fix as he did a later commit, but otherwise if you are having issues still then I can try. I do live coding on gulp run.

Yeah I would appreciate seeing if you can get it to actually come up in the build. I’m going to try to do a different change somewhere else just on my local to a more general file like the Mesh class or something and see if that propagates over when I and doing the gulp run. Because as far as I can tell it should be working… I must have missed a step somewhere. I just wanna figure it out ASAP, because it got merged and is a non working feature at the moment even though the script is correct and it builds no problem :sob:

Here is why:

In a nutshell, the module mechanism for us to support both UMD and ES6. For UMD (used by the PG) you have to export the code on the BABYLON object.

1 Like

So that should have fix it?

Ok cool, I was having a minor aneurysm trying to figure this out.

<3 Thank you so much.

Wow that makes so much sense now, and explains a lot.

1 Like

it is my pleasure!