我的一个React组件有问题.我认为在React呈现ChildComp
组件之前,AJAX不会从外部服务器加载所有内容.
在上面你可以看到来自服务器的响应树.这是我的组件代码:
var ChildComp = React.createClass({
getInitialState: function(){
return {
response: [{}]
}
},
componentWillReceiveProps: function(nextProps){
var self = this;
$.ajax({
type: 'GET',
url: '/subscription',
data: {
subscriptionId: nextProps.subscriptionId //1
},
success: function(data){
self.setState({
response: data
});
console.log(data);
}
});
},
render: function(){
var listSubscriptions = this.state.response.map(function(index){
return (
index.id
)
});
return (
<div>
{listSubscriptions}
</div>
)
}
});
Run Code Online (Sandbox Code Playgroud)
这工作正常,但如果我改变我的回报:
return (
index.id + " " + index.order.id
)
Run Code Online (Sandbox Code Playgroud)
id未定义.以及订单对象的所有其他属性.为什么会这样?如果我console.log
在success
功能后回复它会提供所有数据(如图片所示).我的猜测是,当React渲染组件时,只加载第一个对象,然后加载所有其他内部对象.我真的不能说是不是这样(听起来很奇怪),也不能说如何解决这个问题.
我也尝试过类似的东西
success: function(data){ …
Run Code Online (Sandbox Code Playgroud) 假设我有这种Java对象:
String brand = "Toyota";
String model = "Corolla";
int year = "2013";
CarBean car = new CarBean(brand, model, year);
Run Code Online (Sandbox Code Playgroud)
如何将这个对象轻松存储到MySQL?我已经成功地完成了JDBC并且表正在工作,但是总会有一些东西给我带来白发.
使用NetBeans和MySQL来回存储/检索数据的简单方法(但至少是半专业的)是什么?
我在Bootstrap Modal中有一个表单,我希望我的Spring MVC控制器能够听到它.我的问题是模态不生成href,因为它在当前页面内,所以我不能只映射我的Spring MVC控制器中的模态.
我需要它,因为我想显示来自bindingresult对象的错误.我怎样才能做到这一点?
这是我的模态:http://www.bootply.com/zerZIYpNAF假设它位于index.jsp中,所以假想的路径是/index #myModal.jsp或类似的东西.
@RequestMapping(value="/send", method = RequestMethod.GET)
public String get(Dummybean bean){
return "??"; //index#myModal
}
@RequestMapping(value="/send", method = RequestMethod.POST)
public String post(@Valid @ModelAttribute("dummy") DummyBean bean, BindingResult bindingResult){
if(bindingResult.hasErrors()){
return "??"; //index#myModal
}
//do something
}
public class DummyBean{
@NotNull
private String name;
public String getName() {
return username;
}
public void setName(String name) {
this.name = name;
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Spring 的 JdbcTemplate 将数据保存到数据库,但收到此错误消息。如果我使用 PreparedStatements 以正常方式进行操作,则它可以正常工作。
我的 CarDAO 类:
@Repository
@Service
public class CarDAO implements CarDAOService {
private JdbcTemplate jdbcTemplate;
public JdbcTemplate getJdbcTemplate() {
return jdbcTemplate;
}
public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
public void saveCarToDB(CarBean carbean) {
final String sql = "insert into car (make, model) values (?,?)";
Object[] parameters = new Object[] {carbean.getMake()+
carbean.getModel()};
//if I do here system.out.print(Arrays.toString(parameters));
//it will print right make/model.
jdbcTemplate.update(sql, parameters);
//console says it is that row above, but …
Run Code Online (Sandbox Code Playgroud) java ×2
spring ×2
ajax ×1
database ×1
javascript ×1
jdbctemplate ×1
jsp ×1
mysql ×1
reactjs ×1
spring-mvc ×1