我在第16天做出反应30天后:https://www.fullstackreact.com/30-days-of-react/day-16/
拥有它localy我每当我对表单或时区进行任何更改时都会出现此错误:
app.js
Timeform.js中也有错误的绑定(扔错了)我把它们设置为
private string GetPdfDir()
{
var pdfDir = Ctx.Server.MapPath("~/pdf");
if (!Directory.Exists(pdfDir))
Directory.CreateDirectory(pdfDir);
return pdfDir;
}
public async Task<Result> HtmlToPDF() => await TaskResult(r =>
{
var htmltopdf = Q["Body"].ToString(); //-----> this is my parsed DOM html
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(htmltopdf);
var fileName = "Checkout-" + DateTime.Now.ToString("yyyyMMdd_hhmm") + ".pdf";
var pdfDir = GetPdfDir();
var pdfFile = Path.Combine(pdfDir, fileName);
doc.Save(pdfFile);
r.ResultSet = new { FileName = fileName };
return r;
});
除此之外,一切都与教程中的内容完全相同。
我该怎么做才能让它发挥作用?
Edit1:这是请求的jsx代码(Timeform.js):
TypeError: Cannot read property 'target' of undefined
TimeForm._changeMsg
C:\Users\user\Desktop\predica-react\src\TimeForm.js:28
25 | }
26 |
27 | _changeMsg(evt) {
> 28 | const msg =
29 | encodeURIComponent(evt.target.value).replace(/%20/, '+');
30 | this.setState({msg}, this._handleChange);
31 | }
Edit2:我克隆了官方回购,在timezome.js中似乎没有任何绑定,它有效https://github.com/fullstackreact/30-days-of-react/tree/master/day-16
Edit3:绑定在那里,但从构造函数移到了jsx。
答案 0 :(得分:0)
我所要做的就是将绑定从构造函数移动到jsx,关闭案例。