我正在使用 Survey JS 构建一个响应式调查。在用户选择多项选择选项后,我希望根据https://surveyjs.io/Examples/Library/?id=service-result&platform=Reactjs&theme=default显示所有先前答案的图表
var surveySendResult = function (s, options) {
if (options.success) {
s.getResult('a15eee7a-9418-4eb4-9671-2009c8ff6b24', 'langs');
}
};
var surveyGetResult = function (s, options) {
if (options.success) {
showChart(options.dataList);
}
};
function showChart(chartDataSource) {
document
.getElementById("chartContainer")
.style
.height = "500px";
$("#chartContainer").dxPieChart({
dataSource: chartDataSource,
series: {
argumentField: 'name',
valueField: 'value'
}
});
}
Survey
.StylesManager
.applyTheme("default");
var json = {
surveyId: '5af48e08-a0a5-44a5-83f4-1c90e8e98de1',
surveyPostId: '3ce10f8b-2d8a-4ca2-a110-2994b9e697a1'
};
window.survey = new Survey.Model(json);
survey
.onComplete
.add(function (result) {
document
.querySelector('#surveyResult')
.textContent = "Result JSON:\n" + JSON.stringify(result.data, null, 3);
});
ReactDOM.render(<Survey.Survey model={survey} onSendResult={surveySendResult} onGetResult={surveyGetResult}/>, document.getElementById("surveyElement"));
但是,当您在 create-react-app 构建中实现此功能时,您会收到控制台错误并且不会显示结果。错误说“警告:setState(...):在现有状态转换期间无法更新”,并且该 chartContainer 不是函数。
任何帮助将不胜感激。