【问题标题】:How can I import a data file as a variable?如何将数据文件作为变量导入?
【发布时间】:2022-01-06 05:01:18
【问题描述】:

我有一个有点不标准的需求,我需要将大量数据存储在一个文本文件中,并将其导入到 svelte 中。目前,我的对象看起来像这样

<script>
let data = "A very large string";
</string>

<div>
{data}
</div>

我想把data的内容存储为字符串,动态编译成对象,例如

<script>
let data = import("myData.txt");
</string>

<div>
{data}
</div>

我在 svelte 文档中看不到任何支持此功能的内容,但我是 svelte/前端开发的新手,所以也许有人可以提出解决方法?

【问题讨论】:

  • 文件里面有什么样的数据?
  • 对于所有密集的目的,文本,但类型真的不重要。
  • 好的,希望我的回答能解决您的问题。

标签: javascript svelte


【解决方案1】:

将大量数据存储在服务器上的.txt 文件中可以公开访问的位置,然后使用fetch() 从那里加载它。

let data = await fetch('https://localhost/public_path/myData.txt')
  .then(res => res.text());

注意:我没有使用svelte的经验

一切顺利。

【讨论】:

  • 这行得通,我们现在已经开始这样做了,但它肯定不是最理想的,因为它需要对每个组件进行后续请求(除了处理异步之外),但现在它可以工作,谢谢!
  • 如果您要多次加载同一个文件,请考虑在必要时将其缓存在用户的存储中。
  • Fetch 在这个用例中更好,在你的 js 中导入一个文本文件最终会增加包的大小。
  • 可以通过 Vite 导入 json。 vitejs.dev/guide/features.html#json
猜你喜欢
  • 2020-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-18
  • 2018-12-04
  • 1970-01-01
  • 1970-01-01
  • 2022-06-28
相关资源
最近更新 更多