我是小白,我嘗試編譯JSX下面這個教程:使用爲什麼componentDidMount方法不會被調用在reactjs.net當我寫的JSX
http://xabikos.com/2015/03/18/Using-Reactjs-net-in-Web-Forms/
reactjs.net ``
在我helloWorld.jsx
class PageContent extends React.Component {
componentDidMount() {
this.state = { name: "Hello World from ComponentDidMount" };
}
constructor(props) {
super(props);
this.state = { name: "Hello World" };
}
componentWillMount() {
this.state = { name: "Hello World from ComponentWIllMount" };
}
render() {
return <h1>{this.state.name}</h1>
}
}
在我ReactConfig.cs
ReactSiteConfiguration.Configuration
.AddScript("~/Scripts/components/helloWorld.jsx");
在我Default.aspx.cs
var env = AssemblyRegistration.Container.Resolve<IReactEnvironment>
();
var objectModel = new { user = "React User" };
var reactComponent = env.CreateComponent("PageContent",
objectModel);
PageContent.Text = reactComponent.RenderHtml();
頁似乎工作正常
它打印
的 「Hello World從組件將安裝」
但是當我評論Component Will Mount時,我沒有收到DidM 'mount,只打印
的 「Hello World」
有誰知道這是爲什麼方法從不叫什麼?
預先感謝您
在componentDidMount中使用'this.setState({name:「來自ComponentDidMount的Hello World」});' –