我是React和REDUX的新手,我只是开发一个简单的反应应用程序,现在我遇到一个问题,当我在我的组件中渲染一个输入元素如果我设置元素"值"它变成只读但是如果我设置了"defaultValue"上的值,当我重新更新状态时,它永远不会再次更新.
这是我的代码:
import React from "react";
export default class EditForm extends React.Component {
editTransaction(event) {
var transaction = this.props.transaction;
event.preventDefault();
var NewTransaction = {
transactions_data: {
amount: this.refs.amount.value
}
}
this.props.editTransaction(NewTransaction, transaction.id);
}
closeForm() {
this.props.closeForm();
}
render() {
var {amount}=this.props.transaction;
return (
<div>
<br/>
<h4>Edit Transaction</h4>
<div className="btn btn-danger pull-right" onClick={this.closeForm.bind(this)}>close</div>
<div className="clearfix"></div>
<form onSubmit={this.editTransaction.bind(this)}>
<div>
<label for="amount">Amount</label>
<input value={amount} onChange={(value) => this.onChange(value)} className="form-control"
id="amount" name="amount" type="number"
ref="amount"/>
</div>
<br/>
<br/>
<input className="btn btn-info" type="submit" value="submit"/>
</form>
</div>
); …Run Code Online (Sandbox Code Playgroud) 我是 docker 新手,有时只是学习 docker,因为我正在使用 LAPP(Linux、Apache、PHP 和 PostreSQL)堆栈,并且始终使用整体架构,其中所有内容都放在一个服务器/vps 中。
在了解了 docker 之后,我的想法发生了很大的变化,现在我将尝试如何将堆栈容器化。当我进入数据库时,我想如果我在群模式下实现了 docker,当我扩展它时,数据库可以在我的工作节点中自动复制或同步..但事实上它没有。这是我用来重现场景的 .yml 文件。
version: "3"
services:
db:
image: postgres:9.5
container_name: db
restart: always
tty: true
ports:
- "5432:5432"
environment:
POSTGRES_PASSWORD: mydocker_pass
POSTGRES_USER: mydocker_user
POSTGRES_DB: mydocker
volumes:
- db-data:/var/lib/postgresql/data
volumes:
db-data:
Run Code Online (Sandbox Code Playgroud)
第一次我只是在我的内部创建一个容器swarm-manager,但后来我用这个命令扩展了这个服务,docker service scale db_stack_db=2它工作得很好,现在新的容器正在我的工作节点中运行。在我的worker节点中,我也有与我的manager节点中已有的相同的卷,但遗憾的是,当我在db节点中写入某些内容时manager,它不会显示在我的worker节点中,反之亦然,尽管它们具有相同的卷名称,并且预-创建的数据库:mydocker并且还具有相同的数据库用户:mydocker_user和db_password mydocker_password,这意味着节点中的实例worker不与manager节点同步。
那么如果这里有人经历过这种情况,请帮助我,请与我分享你的想法,群体模式的最佳实践是什么?我是否只需为数据库放置一个节点,因为如果我扩展数据库并且它在该worker节点中运行,它是否有用并有助于数据库服务的负载?manager因为它和节点之间没有相同的数据worker。
问候。
目前我使用的是PHP版本5.4.16和NuSoap 0.95,我试过这个例子: 这里
它显示了这样的服务器代码;
$server->wsdl->addComplexType(
'Chapter',
'complexType',
'struct',
'all',
'',
array(
'title' => array('name'=>'title','type'=>'xsd:string'),
'page' => array('name'=>'page','type'=>'xsd:int')
)
);
$server->wsdl->addComplexType(
'ChapterArray',
'complexType',
'array',
'',
'SOAP-ENC:Array',
array(),
array(
array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:Chapter[]')
),
'tns:Chapter'
);
$server->wsdl->addComplexType(
'Book',
'complexType',
'struct',
'all',
'',
array(
'author' => array('name'=>'author','type'=>'xsd:string'),
'title' => array('name'=>'title','type'=>'xsd:string'),
'numpages' => array('name'=>'numpages','type'=>'xsd:int'),
'toc' => array('name'=>'toc','type'=>'tns:ChapterArray')
)
);
$server->register(
'getBook',
array('title'=>'xsd:string'),
array('return'=>'tns:Book'),
$NAMESPACE);
function getBook($title) {
// Create TOC
$toc = array();
$toc[] = array('title' => 'Chapter One', 'page' => 1);
$toc[] = array('title' => 'Chapter …Run Code Online (Sandbox Code Playgroud) 我真的很新做出反应,现在我想在进入任何路线之前实施登录页面,我目前正在使用:
React:15.4.2,React-DOM:15.4.2,React-Redux:5.0.4,我使用webpack和es2015作为我的预设.
我已经做了很多谷歌搜索,但我仍然没有找到任何解决方案,这里是当前的源代码:for index.js:
import React from "react";
import ReacrDOM from "react-dom";
import {Router, Route, IndexRoute, hashHistory} from "react-router"
import {Provider} from "react-redux";
import store from "./store";
import Layout from "./pages/Layout";
import Dashboard from "./pages/Dashboard";
import Login from "./pages/login/index";
import User from "./pages/user/index";
import EnsureLoggedIn from "./EnsureLoggedIn";
const app = document.getElementById("app");
ReacrDOM.render(
<Provider store={store}>
<Router history={hashHistory}>
<Route path="/login" component={Login}/>
<Route component={EnsureLoggedIn}>
<Route path="/" component={Layout}>
<IndexRoute component={Dashboard}/>
<Route path="user" component={User}/>
</Route>
</Route>
</Router>
</Provider>
, app);
Run Code Online (Sandbox Code Playgroud)
这是我的Dashboar组件:
import React from "react"; …Run Code Online (Sandbox Code Playgroud) javascript ×2
reactjs ×2
complextype ×1
database ×1
devops ×1
docker ×1
docker-swarm ×1
frontend ×1
nusoap ×1
php ×1
postgresql ×1
react-redux ×1
react-router ×1
redux ×1
web-services ×1