Cocos 3.7.3 Using Material setProperty on Spine only take effect for the first time

Hi, I am writing a simple shader for spine, and use ts code to animate that shader by setProperty function. The same logic work with sprite, but not Spine. How can I make setProperty work inside a tween?
Here is my demo
TestShaderSpine.zip (5.3 MB)

After setting up the property you can call

this.ske.updateMaterial();

We’ll standardize the calls to Sprite and Spine later.

@canvas
Call this on update or on tween function ?

It can be called in update and tween, if you can give me more specific application scenarios I can give better suggestions.