0

I have a problem exporting user data, for export 'currentUserData' and 'triggerUpdate' to 'ContentDashboardUser'. ContentDashboardUser.svelte

<script lang="ts">
  import { scale } from 'svelte/transition';
  import type { User } from '$models/interfaces/user.interface';
  export let currentUserData: User;
  export let triggerUpdate: (e: Event) => Promise<void>;
</script>

<div class="container" transition:scale|local={{ start: 0.7, delay: 500 }}>
   <h1>{currentUserData.username}</h1>
</div>

+page.svelte

<script lang="ts">
  import DashboardPage from '$ui/Page/DashboardPage.svelte';
  import ContentDashboardUser from './ContentDashboardUser.svelte';
  import { UpdateField } from '$lib/utils/requestUtils';
  import { nodeBefore } from '$lib/helpers/whitespacesHelper';
  import { variables } from '$lib/utils/constants';
  import type { User, UserResponse } from '$models/interfaces/user.interface';
  export let data: any;
  const url = `${variables.BASE_API_URI}/v1/user/`;
  let updateResponse: UserResponse;
  let triggerUpdate = async (e: Event) => {
    const sibling = nodeBefore(<HTMLElement>e.target);
      if (sibling) {
    const [res, err] = await UpdateField(sibling.name, sibling.value, url);
    if (err.length <= 0) {
         updateResponse = res;
    }
       }
  };
  let currentUserData: User;
  $: data.userResponse,
      (() => {
    currentUserData = data.userResponse;
    if (updateResponse && updateResponse.user) {
        currentUserData = updateResponse.user; 
    }
   })();
</script>
<DashboardPage props={{ contentComponent: ContentDashboardUser }}  />

I tried a solution to send data to DashboardPage but it didn't work +page.svelte

...
<DashboardPage props={{ contentComponent: ContentDashboardUser, triggerUpdate, currentUserData }}  />

DashboardPage.svelte

...
interface DashboardPageProps {
   contentComponent: any;
   currentUserData: User;
   triggerUpdate: (e: Event) => Promise<void>;
}

export let props: DashboardPageProps;
...
dev dr.
  • 1
  • 1

0 Answers0