Exception When Changing Pages When Tooltip In Pivot Table Cell Template

The below code will cause an exception to occur whenever you change pages:



@page "/"
@using Syncfusion.Blazor.Popups;
@using Syncfusion.Blazor.PivotView


    <SfPivotView TValue="ProductDetails" Height="300">
        <PivotViewTemplates>
            <CellTemplate>
                <Syncfusion.Blazor.Popups.SfTooltip>
                    <TooltipTemplates>
                        <Content>
                            TESTING
                        </Content>
                    </TooltipTemplates>

                </Syncfusion.Blazor.Popups.SfTooltip>
            </CellTemplate>
        </PivotViewTemplates>

        <PivotViewDataSourceSettings DataSource="@dataSource">
            <PivotViewColumns>
                <PivotViewColumn Name="Year"></PivotViewColumn>
                <PivotViewColumn Name="Quarter"></PivotViewColumn>
            </PivotViewColumns>
            <PivotViewRows>
                <PivotViewRow Name="Country"></PivotViewRow>
                <PivotViewRow Name="Products"></PivotViewRow>
            </PivotViewRows>
            <PivotViewValues>
                <PivotViewValue Name="Sold" Caption="Units Sold"></PivotViewValue>
                <PivotViewValue Name="Amount" Caption="Sold Amount"></PivotViewValue>
            </PivotViewValues>
        </PivotViewDataSourceSettings>
    </SfPivotView>


@code{
    public List<ProductDetails> dataSource { get; set; }
    protected override void OnInitialized()
    {
        this.dataSource = ProductDetails.GetProductData().ToList();
    }

    public class ProductDetails
    {
        public int Sold { get; set; }
        public double Amount { get; set; }
        public string Country { get; set; }
        public string Products { get; set; }
        public string Year { get; set; }
        public string Quarter { get; set; }

        public static List<ProductDetails> GetProductData()
        {
            List<ProductDetails> productData = new List<ProductDetails>();
            productData.Add(new ProductDetails { Sold = 31, Amount = 52824, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q1" });
            productData.Add(new ProductDetails { Sold = 51, Amount = 86904, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q2" });
            productData.Add(new ProductDetails { Sold = 90, Amount = 153360, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q3" });
            productData.Add(new ProductDetails { Sold = 25, Amount = 42600, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q4" });
     
            return productData;
        }
    }
}



The exception looks like this:
Microsoft.JSInterop.JSException: Cannot read property 'blazor__instance' of null
TypeError: Cannot read property 'blazor__instance' of null
    at Object.destroy (https://localhost:44366/_content/Syncfusion.Blazor/scripts/sf-tooltip-89e6e2.min.js:1:23226)
    at https://localhost:44366/_framework/blazor.server.js:8:31421
    at new Promise (<anonymous>)
    at e.beginInvokeJSFromDotNet (https://localhost:44366/_framework/blazor.server.js:8:31390)
    at https://localhost:44366/_framework/blazor.server.js:1:19202
    at Array.forEach (<anonymous>)
    at e.invokeClientMethod (https://localhost:44366/_framework/blazor.server.js:1:19173)
    at e.processIncomingData (https://localhost:44366/_framework/blazor.server.js:1:17165)
    at e.connection.onreceive (https://localhost:44366/_framework/blazor.server.js:1:10276)
    at WebSocket.i.onmessage (https://localhost:44366/_framework/blazor.server.js:1:38091)
   at Microsoft.JSInterop.JSRuntime.InvokeWithDefaultCancellation[T](String identifier, Object[] args)
   at Syncfusion.Blazor.Popups.SfTooltip.ComponentDispose()
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__139_0(Object state)
   at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContext.ExecuteSynchronously(TaskCompletionSource`1 completion, SendOrPostCallback d, Object state)
   at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContext.<>c.<.cctor>b__23_0(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContext.ExecuteBackground(WorkItem item)

Looks like there is some problem disposing of the tooltip.

This worked in earlier versions.

8 Replies 1 reply marked as answer

JC Jonah Coleman July 21, 2020 10:08 PM UTC

To clarify- the exception occurs when you navigate to a different page:

https://screencast-o-matic.com/watch/cYir3jEYHa


ME Mouli Eswararao Syncfusion Team July 22, 2020 03:16 PM UTC

Hi Jonah, 
We are checking this issue at our end we will update you more details about this within two business days (24.07.2020). 

Regards, 
Mouli 



SN Sivamathi Natarajan Syncfusion Team July 24, 2020 01:45 PM UTC

Hi Jonah, 
 
We have checked the reported problem at our end. And we have logged bug report on this internally and the fix for this issue will be available in our upcoming Vol 2 SP1 release which is estimated to be rolled out on 2nd week of August, 2020. 
 
We appreciate your patience until then. 
 
Regards, 
Sivamathi. 



JC Jonah Coleman July 24, 2020 01:48 PM UTC

Thank you.  I'm glad you're scheduling a fix, but this is the first time I'm disappointed in Syncfusion's responsiveness.  This last release is full of these types of exceptions- I'd think this scenario would warrant a hot fix ASAP as it makes amounts of functionality unusable.


SN Sivamathi Natarajan Syncfusion Team July 27, 2020 01:40 PM UTC

 
Currently, the issue reproduced because of the tooltip template. So, could you please use the pivot table control without tooltip template until the fix which is promised on 2nd week of August 2020. 
 
Regards, 
Sivamathi. 



JC Jonah Coleman July 27, 2020 01:51 PM UTC

Already have- just mentioning that I've always been super impressed with Syncfusion's responsiveness until now.  A 3-week timeframe for fix to major issues (there are a number similar to this that are reported and recognized right now) that cause crashing is very unfortunate.


SN Sivamathi Natarajan Syncfusion Team July 28, 2020 03:25 PM UTC

Hi Jonah,  
  
We will include the fix in our next patch release which is estimated to be available in the first week of August 2020. 
  
Regards, 
Sivamathi. 



SN Sivamathi Natarajan Syncfusion Team August 5, 2020 02:34 PM UTC

Hi Jonah,  
 
The reported issue has been fixed in the weekly release (v18.2.0.48) and it is available in nuget.org (https://www.nuget.org/). Meanwhile, we have prepared a sample for your reference. 
 
Please let us know if you have concern. 
 
Regards, 
Sivamathi. 



Marked as answer
Loader.
Up arrow icon