- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在 React 中,我将一个对象的 URL 属性(特别是 amcharts chart bullet.url)(一个字符串)设置为“../members/{member.name}”,它可以毫无问题地呈现。单击链接可正确导航到该页面。但是,似乎所有以前加载的状态都需要重新加载。它是一个新的 React“ session ”吗?
我已经尝试使用 Link 使用各种表达式设置属性。但似乎没有一个能按预期编译。我发现的大多数文章都与链接或持久状态的基本用法有关。
以下工作呈现和导航,但所有状态都消失在新页面上:
let series = chart.series.push(new am4charts.LineSeries());
let bullet = series.bullets.push(new am4charts.CircleBullet());
bullet.url = "../Members/{member.name}";
我认为我缺少 React 概念或设置链接 URL 的简单方法。我想在不“重置”所有以前加载的状态的情况下导航。
最佳答案
不使用 url
,而是使用点击(“hit”
)事件来保持在 React 生态系统中。如果您允许通过 React Router 呈现图表组件并使用 withRouter
将其导出,您可以在组件本身上利用 this.props.history
。至于如何处理成员的名字,假设bullet
实际上是其他子弹的模板,我个人认为成员的名字应该是图表数据的一部分。例如
主要成分:
import React, { Component } from "react";
import ReactDOM from "react-dom";
import { Route, BrowserRouter as Router } from "react-router-dom";
// ...
// main component's render
<Router>
<React.Fragment>
<Route
path="/"
render={props => <App {...props} />}
/>
<Route
path="/Member/:name"
render={props => <Person {...props} extra="via router" />}
/>
</React.Fragment>
</Router>
包含您的图表的组件(例如 App):
import React from "react";
import { withRouter } from "react-router-dom";
import * as am4core from "@amcharts/amcharts4/core";
import * as am4charts from "@amcharts/amcharts4/charts";
import am4themes_animated from "@amcharts/amcharts4/themes/animated";
// App's componentDidMount() ...
// ...chart code...
// Member names found in bullet data
chart.data = [ { name: "...", /* ... */ }, /* ... */ ];
// Since we're not using `url`, manually change the cursor to a pointer on hover
bullet.cursorOverStyle = am4core.MouseCursorStyle.pointer;
// Bullet click event
bullet.events.on("hit", event => {
this.props.history.push('../Members/' + event.target.dataItem.dataContext.name);
});
// ... end App
export default withRouter(App);
这是我们的 Column charts with images at top demo 的 fork 在 React 中,当单击项目符号/图像时,既会更新主要组件的状态,也会转到新的 URL,并且都会加载此人的信息:
https://codesandbox.io/s/olpzok2rxz
如果 member.name
不是图表数据的一部分而且也不可能是,那么在 JSFiddle 或 CodeSandbox 上提供您的应用程序示例会有所帮助,以便我们进一步提供帮助。
关于javascript - 在 React 中,如何从链接或其他组件添加 URL "string"作为对象的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55427664/
我有一个网站,并且我使用 javascript sdk 添加了“点赞”按钮。 这是代码 (function(d, s, id) { var js, fjs = d.g
我知道 HTML 是逐行读取的。当您链接多个 css 文件(如规范化文件和样式表文件)时,由于 CSS 重要性特异性和源顺序,样式表文件应链接在规范化文件之后。看起来这不会影响链接的 JavaScri
我正在使用官方 Bootstrap site 提供的 CDN 链接在我的网络应用程序中使用面板进行测试 在彻底检查我的代码后,面板没有显示。 但是我在 SO 上看到了类似的帖子并且 CDN 链接不同
这里是编码初学者。我正在尝试为我的移动设备网站设置断点,以便我的网站适合小屏幕。我只是想检查如果我缩小视口(viewport)的宽度,背景颜色是否会改变,但没有发生任何变化。也许我只是对一个简单的错误
举一个我想要的例子,想象一下这个字符串: $text = 'lorem ipsum About us lorem ipsum'; 如果此字符串包含一个 href 以 / 开头的 anchor 链接,则
如何链接到 LaTeX 文档的另一部分或子部分?这种链接的常规范式是什么,像[链接名称]那样写,或者像网页超链接那样写? 最佳答案 链接到另一个部分需要您的部分进行一些额外的标记。要使用的命令是: \
我有一个订单表,其中包含订单号、客户 ID 和代理 ID。然后有一个带有 id 的客户表和一个带有 id 的代理表。 我需要获取所有具有来自代理 ID 'a03' 和代理 ID 'a05' 的订单的客
假设我有: dic = {"z":"zv", "a":"av"} ## Why doesn't the following return a sorted list of keys? keys = d
我在尝试链接到外部库时得到了一些奇怪的结果。如果我从命令行运行以下命令: gcc fftwTest.c -I../extlib/fftw-3.3.5-dll32 -L../extlib/fftw-3.
我认为我没有正确理解 jQuery 链接。我正在遍历一个数组并尝试将 div 元素添加到我的包装器 CSS 类中,每个 div 元素都有一个“click”类和自定义 css top 和 left 属性
HTML 使用超级链接与网络上的另一个文档相连。几乎可以在所有的网页中找到链接。点击链接可以从一张页面跳转到另一张页面。 HTML 超链接(链接) HTML使用标签 a 来设置超文本链接。 超链
这个问题在这里已经有了答案: How do I link to part of a page? (hash?) (7 个答案) Scroll Automatically to the Bottom
我想创建一个 Docker Swarm 集群,运行一个 Elasticsearch 实例、一个 MongoDB 实例和一个 grails 应用程序,每个都在单独的机器上。我正在使用 Docker Ma
我正在尝试将 CakePHP HTML Linker 用于以下代码 Add Cuisine 由于 span 标签需要在 a 标签内。我无法根据需要获得输出。关于如何完成它的任何建议? 最佳答案 禁用链
大家好, 我最近开发了一个应用程序,很快就会提交到 App Store。我想免费提交这个应用程序,并想知道我是否可以实现一个带有 PayPal 捐赠标志的按钮,上面基本上写着“捐赠用于开发”或与此相关
我想尝试在 dlang 中使用 libuv。我下载了这样的 dlang 绑定(bind): git clone git@github.com:tamediadigital/libuv.git 现在我接
我有一个节点(节点 a),各种其他节点(节点 b/c/d/e)与之引用。 我可以创建一个带有参数的 View 作为我正在查看的节点(节点 a),并获取引用该节点的节点列表。 基本上在节点 a 查看节点
我正在尝试建立一个常见问题页面,上面有目录,下面有答案。我想点击目录中的一个问题,并在同一页面上链接到相应的答案。我如何在 CakePHP 中使用 $this->Html->link() 执行此操作方
在 WooCommerce 3.0+ 中,我使用 js 创建了一些选项卡,每个选项卡中包含来自不同类别的产品。我已经设法修改了简单产品的添加到购物车链接,其中点击了 addtocart 按钮它进入下一
Delphi 2007/2009 奇怪的问题在这里: 根据设计时定义的组件属性,是否可以在链接中包含文件或保留文件? 示例:如果我将 SomeProperty 保留为真,则在编译时,单元 SomeUn
我是一名优秀的程序员,十分优秀!