Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Schizzomarino
Advocate I
Advocate I

Can't get async / wait to work in any form or shape within a custom viz

I am trying to animate a chart in subsequent steps in a custom visualisation but I could not get it to work, eventually I'd like to use await the promise from d3.transition.end() (d3 v5.7 with correct typing); but right now I'd be very happy to just see sync/await work in a Power BI

I have simplified the async call here to test and share (from a similar post here in the Power BI community ) I get no logs at all from the below), can anyone please tell me what I am doing wrong?

 

public update(optionsVisualUpdateOptions) {

        function getPosts() {
            return new Promise((resolvereject=> {
                setTimeout(() => {
                    console.log("Set Timeout");
                    resolve(1);
                }, 20);
            });
            } 
        async function init() { 
            console.log("Async function was started");
            await getPosts().then((result=> { console.log("Promise result received") });
        }
        
       (async () => {
            try {
                var text = await init();
                console.log("Some code after async call!");
            } catch (e) {}
        })();
}
 
 
 
Am I missing a library or something, should this not go in the Update function?
I have done research but I can't seem to find a solution.
I am using pbiviz 3.1.5

 
Thanks for any help you may provide,
 
Daniel
1 ACCEPTED SOLUTION
dm-p
Super User
Super User

Hi @Schizzomarino,

Your code is definitely okay. Your issue appears to be with Webpack and no further configuration is required from creating a new visual other than ensuring that you have regenerator-runtime as a dependent package and referenced in your visual.ts.

I've made a simple Git repo that you can clone and take a look at if you want to validate or see any differences to your code, and I'll link the sections of code as prescribed. Essentially, you just need to do the following:

I now get the following in my console with your code:

image.png

Hopefully this gets you moving though. Good luck!

Daniel





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!


On how to ask a technical question, if you really want an answer (courtesy of SQLBI)




View solution in original post

3 REPLIES 3
luojiandan_bi
Helper I
Helper I

It's great!I got the same error ago,but worked now.

thanks so much for @dm-p 

dm-p
Super User
Super User

Hi @Schizzomarino,

Your code is definitely okay. Your issue appears to be with Webpack and no further configuration is required from creating a new visual other than ensuring that you have regenerator-runtime as a dependent package and referenced in your visual.ts.

I've made a simple Git repo that you can clone and take a look at if you want to validate or see any differences to your code, and I'll link the sections of code as prescribed. Essentially, you just need to do the following:

I now get the following in my console with your code:

image.png

Hopefully this gets you moving though. Good luck!

Daniel





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!


On how to ask a technical question, if you really want an answer (courtesy of SQLBI)




Oh wow, thanks so much for this Daniel!

Worked like a charm!

 

Now to start using generator functions right? 😄

Helpful resources

Announcements
July PBI25 Carousel

Power BI Monthly Update - July 2025

Check out the July 2025 Power BI update to learn about new features.

Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors