const users = [...state.users]; не делает копии стейта, следовательно, дальше так же меняется сам стейт, так что суть, видимо не в том, стейт или копию нужно изменять, а в том, как конструировать возвращаемый объект. {...state, users}{users:[], [.......]}return {...state, users: state.users}return {...state, users}const mapStateToProps = store => { return { user: store.user.user }; };
const initialStateUser = { name: "Вася" };
const initialStateUser = {
users: []
}<script>
$(function(){
$('#menu-top a').on('click', function(){
let url = $(this).attr('href');
$.ajax({
type: "GET",
url: url
}).done(function(data){
$("#content").html(data);
});
return false;
})
$('#left-menu a').on('click', function(){
let url = $(this).attr('href');
$.ajax({
type: "GET",
url: url
}).done(function(data){
$("#<имя блока>").html(data);
});
return false;
})
})
</script><div id="text"></div> туда поместить все что собираетесь менять, а в скрипте поменять #content на #text <script>
$(function(){
$('#menu-top a').on('click', function(){
let url = $(this).attr('href');
$.ajax({
type: "GET",
url: url
}).done(function(data){
$("#content").html(data);
});
return false;
})
})
</script> <div><script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
const users = [...state.users];в массиве users ссылки на объекты массива state.users, а не копия этого массива.Это поверхностная копия, меняя в ней значения, так же меняется и state.users