我有一个由API创建的JSON字符串:
var appStructure = {
"code": 200,
"message": "Register Form Loaded.",
"response": "'div',{},'Registration'"
};
我想使用API response
动态创建元素。我正在尝试做这样的事情:
var testCard1 = React.createElement(appStructure.response);
ReactDOM.render(testCard1, document.getElementById('main-content'));
但是它总是给我错误
警告:使用不正确的外壳。将PascalCase用于React组件,或将小写用于HTML元素。 未捕获的DOMException:无法在“文档”上执行“ createElement”:提供的标记名称(“ h1”,{},“ Hello Testing”)不是有效名称。
答案 0 :(得分:1)
appStructure.response
是字符串,不能作为参数传递到createElement
方法中。您应该将字符串更改为可接受的参数。此外,testCard1
应该在PascalCase中:TestCard1
var args = appStructure.response.split(',');
var TestCard1= React.createElement(args[0].replace(/\W/g, ''), JSON.parse(args[1]), args[2].replace(/\W/g, ''));