Reactjs 有没有办法在SPFX中的应用程序Customiser扩展中使用ComponentDidMount()和ComponentDidUpdate()

Reactjs 有没有办法在SPFX中的应用程序Customiser扩展中使用ComponentDidMount()和ComponentDidUpdate(),reactjs,sharepoint,spfx,Reactjs,Sharepoint,Spfx,我正在尝试在扩展中实现一个Web部件代码,我能够做到这一点。但是当我运行代码ComponentDidMount()时,不会调用ComponentDidUpdate()。这是可能的还是不可能的?我想知道 请随意分享您的知识 Thanxxx从实用的角度来看,我认为您不希望在扩展中运行componentDidUpdate(),除非您有一个非常好的if语句 但我认为一个组件应该可以工作 在customizer.ts文件中,我在Init之后创建React元素 const element: React.Re

我正在尝试在扩展中实现一个Web部件代码,我能够做到这一点。但是当我运行代码ComponentDidMount()时,不会调用ComponentDidUpdate()。这是可能的还是不可能的?我想知道

请随意分享您的知识


Thanxxx

从实用的角度来看,我认为您不希望在扩展中运行componentDidUpdate(),除非您有一个非常好的if语句

但我认为一个组件应该可以工作

在customizer.ts文件中,我在Init之后创建React元素

const element: React.ReactElement<IAcgBobBotProps> = React.createElement(
                AcgBobBot,
                {
                    webChatToken: this.properties.webChatToken
                }
            );
            ReactDom.render(element, this._bottomPlaceholder.domElement);
常量元素:React.ReactElement=React.createElement( AcgBobBot, { webChatToken:this.properties.webChatToken } ); render(元素,this.\u bottomPlaceholder.domeElement); 我在一个新的\components\AcgBobBot.tsx tsx文件中创建了一个组件:

export default class AcgBobBot extends React.Component<IAcgBobBotProps, IAcgBobBotState> {

    public componentDidMount() {
        console.log("Hi from componentDidMount");
    }
    public render(): React.ReactElement<IAcgBobBotProps> {

    ...
}

导出默认类AcgBobBot扩展React.Component{
公共组件didmount(){
log(“来自componentDidMount的Hi”);
}
public render():React.ReactElement{
...
}
一、 就我个人而言,还要将我的React“web部件”放在占位符中,从这里完全复制代码: