Вы не можете вернуть несколько компонентов одновременно одним вызовом connect
, помните, что вы export default
, и вы должны возвращать только одну функцию / компонент, помните, что connect
возвращает только один компонент в время, так как вы можете сделать это, как
export default {
ListProduct: connect(mapStateToProps)(ListProducts),
AddProduct: connect(mapStateToProps)(AddProduct)
}
Так что при импорте компонентов вы можете сделать
import Components from ‘.../your/path’;
class MyView extends React.Component{
render(){
return <Components.ListProducts/>
}
}
Можно использовать событие OutputDataReceived для получения данных, поскольку это накачано к StdOut.
Лучшее решение, которое я нашел:
private void Redirect(StreamReader input, TextBox output)
{
new Thread(a =>
{
var buffer = new char[1];
while (input.Read(buffer, 0, 1) > 0)
{
output.Dispatcher.Invoke(new Action(delegate
{
output.Text += new string(buffer);
}));
};
}).Start();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
process = new Process
{
StartInfo = new ProcessStartInfo
{
CreateNoWindow = true,
FileName = "php-cgi.exe",
RedirectStandardOutput = true,
UseShellExecute = false,
WorkingDirectory = @"C:\Program Files\Application\php",
}
};
if (process.Start())
{
Redirect(process.StandardOutput, textBox1);
}
}