我正在使用D3JS库来加载名为“data.csv”的CSV数据。通过单击按钮,我在控制台上输出数据长度。 我的问题是,如果我在按钮上的两个操作之间更改“data.csv”内的数据,则数据将不会更新。
例如,我有一个包含100个数据的CSV和另一个包含200个数据的CSV。首先我将100个数据CSV放在我的文件夹中并按“读取”按钮,我可以在控制台上查看数据长度,它是预期“数据长度= 100”。之后,我用200个数据覆盖CSV文件并再次按下按钮,控制台仍然显示相同的数据长度(100),我的数据变量尚未使用新文件中的新数据进行更新。
如何解决数据更新问题?
HTML
<button onclick="read_data()">Read</button>
的JavaScript
function read_data(){
Plotly.d3.csv("data.csv", function(error, data) {
console.log("Data length = " + data.length)
})
}
答案 0 :(得分:1)
就像Andrew指出浏览器可能正在缓存文件一样。也许您可以添加查询参数,例如:
function read_data(){
Plotly.d3.csv("data.csv?”+(new Date()).getTime(), function(error, data) {
console.log("Data length = " + data.length)
})}