(六)SvelteKit教程:刷新数据,preload data,环境变量和部署

(六)SvelteKit教程:刷新数据,preload data,环境变量和部署

1.刷新数据

文件目录如下:

├── stocks
│   ├── +page.js
│   └── +page.svelte

+page.js 内容如下:

export const load = async (loadEvent) => {
	const { fetch } = loadEvent;
	// depends('stocks:actively-trading');
	const response = await fetch('http://localhost:4000/stocks');
	const stocks = await response.json();
	return { stocks };
};

+page.svelte 内容如下:

<script>
	import { invalidateAll, invalidate } from '$app/navigation';
	export let data;

	function refresh() {
		// invalidateAll();
		// invalidate('stocks:actively-trading');
        invalidate('http://localhost:4000/stocks');
	}
</script>

<h1>Actively trading stocks</h1>

{#each data.stocks as stock}
	<h2>{stock.symbol} - ${stock.price}</h2>
{/each}

<button on:click={refresh}>Refresh</button>

重点是里面的 refresh 函数。

2.preload data

如下 routes/+page.svelte 内容:

<script>
    
    import { goto, preloadData } from "$app/navigation";
    const handleClick = () => {
        console.log("handleClick about page");
        goto("/about");
    };
</script>

<div>
    This is a Home page.

    <a href="/users" data-sveltekit-preload-data="hover"> users page</a>
    <a href="/stocks"> stocks page</a>

</div>

<button 
    on:focus={async () => {
        await preloadData("/about");
    }}
    on:mouseover={async () => {
        await preloadData("/about");
    }}

on:click={handleClick}>Go to About page</button>

其中 <a href="/users" data-sveltekit-preload-data="hover"> users page</a>这行代码是通过参数来进行 preload data,如果你想要通过写代码,那么可以参考如下:

on:focus={async () => {
        await preloadData("/about");
    }}
    on:mouseover={async () => {
        await preloadData("/about");
    }}

3.环境变量

在根目录下设置 .env 文件,里面写入:

DB_USER=root
DB_PASSWORD=root
DB_HOST=localhost

之后,我们可以通过在 +page.server.js 中通过:

import { DB_USER } from '$env/static/private';  

来进行使用。

4.部署

通过 https://vercel.com/ 非常容易

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值