小编Ale*_*kex的帖子

在 Promise 解析后更新依赖于 Promise 的 v-for 列表项。

我有一个列表,它迭代对象数组,并生成依赖于当前对象的列表项。

必须使用对象作为参数进行计算,并返回一个承诺。问题是,当呈现列表时,它只能访问 Promise 对象(处于待处理状态),并且在解析后不会更新。

<md-list id="orderList">
        <md-list-item v-for="order in orders" :key="order.id" @click="orderDialog(order)">
            {{ asyncFunction(order) }}
        </md-list-item>
 </md-list>
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得所需的行为?

javascript vue.js

6
推荐指数
1
解决办法
2635
查看次数

load() 应该如何使用

我试图了解 SvelteKit 如何在不同的场景中呈现我的网络应用程序,并且我对load().

我创建了一个带有加载函数的页面,该函数调用外部 API 并使用响应作为组件的 prop。我.svelte-kit/output/prerendered/pages/mypage.html可以看到它在构建步骤中获取了数据,并使用响应预渲染了我的 html。

然后,当我导航到 Web 应用程序中的该页面时,网络选项卡告诉我它在渲染之前调用外部 API。那么,预渲染的意义何在呢?

SvelteKit 文档说:

定义页面或布局的组件可以导出在创建组件之前运行的加载函数。此函数在服务器端渲染期间和客户端中运行,并允许您在页面渲染之前获取和操作数据,从而防止加载微调器。

我不明白这一点。如果每次导航到页面时都会调用 API,如何阻止加载微调器?什么时候应该使用预渲染的 html?

在客户端和服务器中渲染的整个概念对我来说没有意义。在我看来,如果数据是静态的,我希望在服务器上进行预渲染,但如果数据发生变化,那么我希望每次访问该页面时都调用 API(可能需要缓存)。但为什么我想两者都做?

svelte sveltekit

6
推荐指数
1
解决办法
5145
查看次数

从返回类型推断窄字符串文字类型

const createFruit = <T extends string[]>(fruits: T): typeof fruits[0] => fruits[0]

const fruit = createFruit(['apple', 'orange']) // fruit is of type `string`
Run Code Online (Sandbox Code Playgroud)

我希望将 的类型fruit推断为字符串文字apple。难道就没有办法了吗?

typescript

2
推荐指数
1
解决办法
93
查看次数

标签 统计

javascript ×1

svelte ×1

sveltekit ×1

typescript ×1

vue.js ×1