我正在尝试使用React,我有一个更新特定键的状态值的问题.
这是我的州
this.state = {
connections : {
facebook : "http://facebook.com",
flickr : null,
foursquare : null,
googleplus : null,
id : 0,
instagram : "http://instagram.com/",
openstreetmap : null,
pinterest : null,
place_id : 1,
tomtom : null,
tripadvisor : null,
twitter : "http://twitter.com",
vimeo : null,
wikipedia : null,
yelp : null,
youtube : null
},
contact : {
}
}
Run Code Online (Sandbox Code Playgroud)
我正在调用外部组件并向其发送参数.
<Connection type="Facebook" icon={facebookIcon} placeholder="Add Facebook Link" name="facebook" value={this.state.connections.facebook} onChange={this.handleChange.bind(this)}/>
<Connection type="Twitter" icon={twitterIcon} placeholder="Add Twitter Link" name="twitter" value={this.state.connections.twitter} …Run Code Online (Sandbox Code Playgroud) 我有 100 个要导入的图标和图像。有什么办法可以消除在页面顶部写这么多导入语句?我想在一个单独的文件中编写一个导入语句并将其嵌入到顶部。
import basicAmenitiesIcon from '../../../../images/icons/wifi-sign.png';
import parkingIcon from '../../../../images/icons/parking.png';
...
Run Code Online (Sandbox Code Playgroud)
有没有其他办法解决?我正在使用 webpack,这是配置:
{
test: /\.(jpe?g|png|gif|svg)$/i,
loaders: [
'file?hash=sha512&digest=hex&name=[hash].[ext]',
'image-webpack?bypassOnDebug&optimizationLevel=7&interlaced=false'
]
}
Run Code Online (Sandbox Code Playgroud) 我有一个连接器,它有 mapDispatchToProps 和 mapStateToProps 函数,我需要从我的主要组件分派一个动作。
我在尝试分派时收到一条错误消息,提示未定义分派 fetchPlaces(this.props.user.id)
this.props.user.id 值为 1。
我需要获取用户 ID 并将其传递给 fetchPlaces,它会为我提供用户所在的位置。我不知道该怎么做。
连接器
const mapStateToProps = function (store) {
return {
elements: store.elements.elements,
places: store.places.places,
geocode : store.geocode.geocode,
user : store.user.user
};
};
const mapDispatchToProps = function (dispatch) {
return {
userAction : dispatch(fetchUser()),
elementsAction : dispatch(fetchCategories()),
placesAction: (id) => { dispatch(fetchPlaces(id)) }
}
}
class BasicinfoConnector extends React.Component{
render() {
console.log(this.props.user);
if(typeof this.props.user.id != "undefined"){
return (
<Basicinfo elements={this.props.elements} places={this.props.places} geocode={this.props.geocode} user={this.props.user}/>
);
}
else{
return null; …Run Code Online (Sandbox Code Playgroud)我正在尝试使用 v4 react 路由器,但路由器始终呈现初始路径 ('/')。我正在使用
react: ^16.2.0
react-dom: ^16.2.0
react-router-dom: ^4.2.2
当我尝试呈现 /#/account 时,它呈现 Home 而不是 Account。
import React from "react"
import ReactDOM from "react-dom"
import { BrowserRouter as Router, Route } from 'react-router-dom'
import Home from "./components/Home/Home";
import Account from "./components/Account/Account";
import Layout from "./components/Layout";
const app = document.getElementById('app');
ReactDOM.render(
<Router>
<div>
<Route exact path="/" render={() => (<div>Home</div>)} />
<Route path="/account" render={() => (<div>Account</div>)} />
</div>
</Router>,
app
)Run Code Online (Sandbox Code Playgroud)
我需要在postgres数据库中插入/更新点列类型.
我正在使用 node-postgres
使用POSTGRES管理面板生成的脚本将更新查询显示为
UPDATE public.places SET id=?, user_id=?, business_name=?, alternate_name=?, primary_category=?, categories=?, description=?, address=?, city=?, state=?, country=?, zip=?, point WHERE <condition>;
我如何从纬度和经度中获得点数?
我已经看过几个使用POSTGIS的答案,但无法使其正常工作.
在POSTGRES(https://www.postgresql.org/docs/9.2/static/xfunc-sql.html)的文档中提到我们可以使用point '(2,1)',但这不适用于pg查询.
我现在拥有的:
var config = {
user: 'postgres',
database: 'PGDATABASE',
password: 'PGPASSWORD!',
host: 'localhost',
port: 5432,
max: 10,
idleTimeoutMillis: 30000
};
Run Code Online (Sandbox Code Playgroud)
更新部分:
app.post('/updatePlaces', function(req, res, next) {
console.log("Update");
console.log(req.body.places);
pool.query('UPDATE places SET address = $1, alternate_name = $2, business_name = $3, categories = $4, city = $5, country = $6, description …Run Code Online (Sandbox Code Playgroud) 我想执行下面的递归函数,问题是ul因为调用该函数时我正在推送一个ul标签,最后forEach我将关闭它。如果我outputArray.push(<ul>)随着结束而改变</ul>,那么它工作正常,但这不会达到我的目的。
有办法解决吗?
注意:这是一个递归函数。
function flatten(data, outputArray) {
outputArray.push(<ul>)
data.forEach(function (asset){
if(asset.children.length) {
outputArray.push(<li><button onClick={_ => this.appendAssets(asset.name)}>{asset.name}</button></li>);
flatten(asset.children, outputArray);
}
else{
outputArray.push(<li><button onClick={_ => this.appendAssets(asset.name)}>{asset.name}</button></li>);
}
});
outputArray.push(</ul>)
}Run Code Online (Sandbox Code Playgroud)
我的回复是以下格式,
{
"access_token": "eWcWLctGW-_NgGVAmFbO9l-nt3yztFzlZCLLlilI9mGDcM5q8d0kQw0uzvFOoXynHcb-MuPVJGTGkSkBhrr69_-aN1r5j9zB4fCl4u4aqOQ-scNI36xgHeGYpXky60drIBpMI83FGqd9pMjL4GWXjFHq61nhJ6xkGj1u1r9a5u6EJrB1lfjNhljzC_j65xaqxtubQ4AglKFO2ib-levpvnd_bEU-QGQrtvS2QbaXhb_hlnX8czo61Gn_OQyBVk7HbN1SozxIPe3RBvf5AiCAouDMz1WMHy9ybVFy8SnoNIgszjo7Ev2IEWS9aFb87u6bvoJvSVJv7s3z-2GUvG2kwfOk2sUWrmq0QeIJJrYwdKQfs3T8HrK2MNKSGteJ04-O",
"token_type": "bearer",
"expires_in": 1799,
"refresh_token": "f1005c7fd74247069dbdb078ee379410",
"as:client_id": "438dc832-33c7-413b-9c71-d0b98a196e6a",
"userName": "master",
".issued": "Fri, 20 Jan 2017 14:30:09 GMT",
".expires": "Fri, 20 Jan 2017 15:00:09 GMT"
}Run Code Online (Sandbox Code Playgroud)
我不知道如何访问.issued,.expires和as:client_id
我正在使用angular并传递用户名,密码和company_id,并以上述格式获取响应.
dataService.getAuthToken($scope.username, $scope.password, $scope.company_password).then(function (response) {
//response data here
});Run Code Online (Sandbox Code Playgroud)
我可以token_type通过使用response.data.access_token但不确定如何访问来轻松获取,access_token .issued,.expires和as:client_id
javascript ×5
reactjs ×5
react-redux ×2
angularjs ×1
ecmascript-6 ×1
import ×1
jsx ×1
postgis ×1
postgresql ×1
react-router ×1
redux-thunk ×1
webpack ×1