我目前正在开发一个网站,我用过react,react-router和redux.我们正在进行服务器端渲染并在服务器上使用反应路由器.现在我有一个案例,我希望客户端呈现不同于服务器端的组件.我想要这样.
客户端
<Route path="welcome/:id" component={Home} />
Run Code Online (Sandbox Code Playgroud)
服务器端
<Route path="welcome/:id" component={App} />
Run Code Online (Sandbox Code Playgroud)
我有一个用例,例如当用户点击图像时,我想打开包含内容的模态并推荐图像.当用户点击推荐图像时,同一模态应该填写细节,我也想改变路线.在新窗口中打开时,相同的路线应该打开Facebook的一个html页面,并从谷歌中删除元标记.
所以我要么在客户端和服务器上渲染不同的组件.但这也有问题因为我需要找到一种方法来在服务器提供渲染页面时关闭客户端反应路由器.
或者在客户端生成伪路由更改,该更改会更改URL但不会呈现组件.
虽然使用反应内联式大多数人,他们所做的是在styles属性中使用object.例如.
<div style={{left: '54px', position: 'absolute'}}>
</div>
这种反应差异算法是否在这里失败,因为它们是每次重新渲染时创建的新对象.
可以说我有一份文件
{ "_id" : ObjectId("544946347db27ca99e20a95f"), "nameArray": [{"id":1 , first_name: "foo"}]
Run Code Online (Sandbox Code Playgroud)
现在我需要使用$ push将数组推入nameArray.在这种情况下,文档如何更新.是否在客户端上检索文档并在客户端上进行更新,然后将更改反映到Mongodb数据库服务器.整个操作在Mongodb数据库中执行.
我正在使用redux sagas活动频道.我有一个特定的用例,当事件被触发时我想得到getStore状态,因为eventChannel不是生成器函数我不能使用redux sagas的select效果.有没有其他方法来实现这一目标
我还尝试导入存储和使用,store.getState()
但我得到了未定义,因为在存储初始化之前导入了saga文件.
function subscribe(socket) {
return eventChannel(emit => {
socket.subscribe(listenerTopic, {qos: 1});
socket.on('reconnection', () => {
// i need to fetch latest unread message, for that i need to get timestamp
// for last message received which is in store so the command will be to
// send sinceDate i.e last message timestamp and untilDate that is currentDate
})
}
Run Code Online (Sandbox Code Playgroud) 我有一个用例,其中我有数据
{
name: "John",
parentid": "1234",
filter: {a: '1', b: '3', c: '4'}
},
{
name: "Tim",
parentid": "2222",
filter: {a: '2', b: '1', c: '4'}
},
{
name: "Mary",
parentid": "1234",
filter: {a: '1', b: '3', c: '5'}
},
{
name: "Tom",
parentid": "2222",
filter: {a: '1', b: '3', c: '1'}
}
Run Code Online (Sandbox Code Playgroud)
预期成绩:
bucket:[{
key: "2222",
hits: [{
name: "Tom" ...
},
{
name: "Tim" ...
}]
},
{
key: "1234",
hits: [{
name: "John" ...
},
{
name: …
Run Code Online (Sandbox Code Playgroud) 以前我使用过这个查看器脚本,用于正确加载dwg
<script src="https://autodeskviewer.com/viewers/2.5/viewer3D.min.js"></script>
现在我按照本教程设置初始查看器:
https://developer.autodesk.com/en/docs/viewer/v2/tutorials/basic-viewer/
现在我的文件都没有加载到查看器上.Viewer只显示动画加载器,无法加载文件.当我改变观众时:
<script src="https://developer.api.autodesk.com/viewingservice/v1/viewers/viewer3D.min.js"></script>
至:
<script src="https://autodeskviewer.com/viewers/2.5/viewer3D.min.js"></script>
该文件在该查看器中加载.
他们不是关于如何使用Markup API的例子.任何人都可以提供一个例子.
有一段时间,我正在尝试实现这一点,其中锚标签位于一个弹性盒容器内flex-wrap: nowrap
,overflow:auto
现在这可以在谷歌浏览器中使用,但它不适用于较小屏幕尺寸以及Iphone的safari.以下是代码
<html>
<head>
</head>
<style>
.flex-div {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
overflow-x: auto;
}
.flex-div a {
display: inline-block;
white-space: nowrap;
margin-left: 10px;
margin-right: 10px;
}
</style>
<body>
<div class="flex-div">
<a>Modern & contemporary</a>
<a>Modern & contemporary</a>
<a>Modern & contemporary</a>
<a>Modern & contemporary</a>
<a>Modern & contemporary</a>
<a>Modern & contemporary</a>
<a>Modern & contemporary</a>
<a>Modern & contemporary</a>
<a>Modern …
Run Code Online (Sandbox Code Playgroud) reactjs ×2
anchor ×1
css ×1
flexbox ×1
mongodb ×1
node.js ×1
react-router ×1
redux ×1
redux-saga ×1