📖 Scenario: You are building a simple Svelte component that shows a greeting message. The message should come from outside the component, so you need to declare a prop to receive it.
🎯 Goal: Create a Svelte component that declares a prop called greeting using export let and displays it inside a <h1> tag.
📋 What You'll Learn
Declare a prop named greeting using export let
Use the greeting prop inside an <h1> tag
The component should render the greeting text passed as a prop
💡 Why This Matters
🌍 Real World
Props let you create reusable components that can show different data depending on where they are used, like greeting messages, user profiles, or product cards.
💼 Career
Understanding how to declare and use props is essential for building interactive and modular UI components in Svelte, a popular modern frontend framework.
Progress0 / 4 steps
1
Create the Svelte component file
Create a new Svelte component file and add the basic <script> and <h1> tags.
Svelte
Hint
Start with an empty <script> block and an empty <h1> tag below it.
2
Declare the prop with export let
Inside the <script> tag, declare a prop called greeting using export let greeting;.
Svelte
Hint
Use export let greeting; to declare the prop inside the <script> block.
3
Use the prop inside the component
Inside the <h1> tag, insert the {greeting} expression to display the prop value.
Svelte
Hint
Use curly braces {} to insert the greeting variable inside the <h1> tag.
4
Complete the component for use
Ensure the component is ready to receive the greeting prop and display it. The final code should have export let greeting; and use {greeting} inside <h1>.
Svelte
Hint
Double-check that the prop is declared and used correctly in the component.
Practice
(1/5)
1. What does export let do inside a Svelte component's <script> block?
easy
A. It creates a local variable that cannot be changed.
B. It imports a module from another file.
C. It declares a prop that can be set from outside the component.
D. It defines a function inside the component.
Solution
Step 1: Understand the role of export let
In Svelte, export let declares a property (prop) that the parent component can pass in.
Step 2: Differentiate from other uses
Unlike local variables or imports, export let specifically exposes variables as props for customization.
Final Answer:
It declares a prop that can be set from outside the component. -> Option C
Quick Check:
Props = export let [OK]
Hint: Remember: export let means external prop [OK]
Common Mistakes:
Confusing export let with import statements
Thinking export let creates constants
Assuming export let defines functions
2. Which of the following is the correct syntax to declare a prop named title with a default value of "Hello" in Svelte?
easy
A. export let title = "Hello";
B. let export title = "Hello";
C. export const title = "Hello";
D. let title = export "Hello";
Solution
Step 1: Recall correct syntax for props
In Svelte, props are declared with export let followed by the variable name and optional default value.
Step 2: Check each option
export let title = "Hello"; matches the correct syntax: export let title = "Hello";. Others have wrong order or keywords.
Final Answer:
export let title = "Hello"; -> Option A
Quick Check:
export let + name + = default [OK]
Hint: Use 'export let' before variable name for props [OK]
Common Mistakes:
Swapping 'let' and 'export' keywords
Using 'const' instead of 'let' for props
Placing export after variable name
3. Given this Svelte component code:
<script>
export let count = 5;
</script>
<p>Count is {count}</p>
What will be displayed if the component is used as <MyComponent count={10} />?
medium
A. Count is 5
B. Count is 10
C. Count is undefined
D. Syntax error
Solution
Step 1: Understand default and passed props
The component sets a default count of 5, but the parent passes 10, which overrides the default.
Step 2: Determine rendered output
The displayed text uses the passed value 10, so it shows "Count is 10".
Final Answer:
Count is 10 -> Option B
Quick Check:
Passed prop overrides default [OK]
Hint: Passed props override defaults [OK]
Common Mistakes:
Assuming default always shows ignoring passed value
Thinking undefined appears if prop is passed
Confusing syntax error with valid code
4. Identify the error in this Svelte component code:
<script>
export let name;
name = "John";
</script>
<p>Hello {name}</p>
medium
A. You cannot assign a value to a prop inside the component after declaration.
B. Missing default value for the prop name.
C. The export keyword should be after let.
D. The <p> tag cannot use curly braces.
Solution
Step 1: Understand prop assignment rules
Props declared with export let should not be reassigned inside the component; they come from outside.
Step 2: Check the code
The code tries to assign name = "John" after declaration, which is not allowed and causes an error.
Final Answer:
You cannot assign a value to a prop inside the component after declaration. -> Option A
Quick Check:
Props are read-only inside component [OK]
Hint: Don't reassign props inside component [OK]
Common Mistakes:
Trying to set default by assignment after export let
Confusing export let order
Misunderstanding template syntax
5. You want to create a Svelte component that accepts a prop items which is an array, but if no prop is passed, it should default to an empty array. Which code correctly declares this prop?
hard
A. export const items = [];
B. export let items; if (!items) items = [];
C. let items = [];
D. export let items = [];
Solution
Step 1: Set default value in prop declaration
In Svelte, you can assign a default value directly when declaring a prop with export let.
Step 2: Evaluate options
export let items = []; correctly declares items with default empty array. export let items; if (!items) items = []; tries to assign after declaration, which is not allowed. let items = []; is local variable, not prop. export const items = []; uses const which is incorrect for props.
Final Answer:
export let items = []; -> Option D
Quick Check:
Default values go in export let declaration [OK]
Hint: Assign default value in export let line [OK]
Common Mistakes:
Assigning default after declaration
Using const instead of let for props
Not exporting the variable
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.