MST

星途 面试题库

面试题:Qwik组件化开发中延迟加载的基础实现

在Qwik组件化开发环境下,简述如何实现基本的组件延迟加载,需提及关键的API或者概念。
37.5万 热度难度
前端开发Qwik

知识考点

AI 面试

面试题答案

一键面试
  1. 使用$import()
    • 概念:在Qwik中,$import()是实现组件延迟加载的关键API。它允许你动态导入组件,从而实现延迟加载效果。
    • 示例
import { component$, useTask$ } from '@builder.io/qwik';

const MyPage = component$(() => {
  const { run } = useTask$();
  let MyLazyComponent;
  run(async () => {
    MyLazyComponent = (await $import('./MyLazyComponent.tsx')).default;
  });

  return (
    <div>
      {MyLazyComponent && <MyLazyComponent />}
    </div>
  );
});

export default MyPage;
  1. 路由中的延迟加载
    • 概念:如果使用Qwik的路由系统,也可以实现组件的延迟加载。在定义路由时,可以使用动态导入的方式来延迟加载路由组件。
    • 示例
import { createRoutes } from '@builder.io/qwik-city';

export const routes = createRoutes(() => [
  {
    path: '/lazy - page',
    component: () => import('./LazyPage.tsx')
  }
]);

这样,当访问/lazy - page路由时,LazyPage.tsx组件才会被加载。