Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated:
1
00:00:02,330 --> 00:00:03,280
Now to dive in,
2
00:00:03,280 --> 00:00:06,800
I want to start with a couple of pages here.
3
00:00:06,800 --> 00:00:09,970
And for this year, I also got my terminal open.
4
00:00:09,970 --> 00:00:13,220
First of all, we need to install all dependencies though
5
00:00:13,220 --> 00:00:18,160
with npm install and then we can use npm run dev.
6
00:00:18,160 --> 00:00:20,480
And then we'll start the development server,
7
00:00:20,480 --> 00:00:23,410
but of course at the moment I got no pages.
8
00:00:23,410 --> 00:00:25,480
And hence we should add some pages.
9
00:00:25,480 --> 00:00:28,890
And for this demo application for this project
10
00:00:28,890 --> 00:00:32,870
which we're building here, we will need three pages.
11
00:00:32,870 --> 00:00:37,030
A starting page, which shows a list of all meetups.
12
00:00:37,030 --> 00:00:38,890
Then the new meet up page,
13
00:00:38,890 --> 00:00:42,020
which allows us to add a new meetup.
14
00:00:42,020 --> 00:00:44,290
And then the meetup detail page
15
00:00:44,290 --> 00:00:49,070
which allows us to show the details for a selected meetup.
16
00:00:49,070 --> 00:00:51,150
And hence here in the pages folder,
17
00:00:51,150 --> 00:00:55,250
I'll start with the starting page with index.js
18
00:00:55,250 --> 00:00:57,450
directly in the pages folder,
19
00:00:57,450 --> 00:01:01,050
because you learned that index is this special file name
20
00:01:01,050 --> 00:01:04,209
which will be loaded for just slash nothing
21
00:01:04,209 --> 00:01:06,140
in the given sub-folder.
22
00:01:06,140 --> 00:01:08,490
And here we're not in a sub-folder at all,
23
00:01:08,490 --> 00:01:13,183
so index.js will be loaded for our-domain.com slash nothing.
24
00:01:14,030 --> 00:01:15,670
But then we got more pages.
25
00:01:15,670 --> 00:01:19,020
For example, a page for adding a new meetup.
26
00:01:19,020 --> 00:01:22,410
And hence we could add a new meetup.js file
27
00:01:22,410 --> 00:01:27,410
which then would be loaded for our domain slash new meetup.
28
00:01:28,920 --> 00:01:30,790
And you did learn over the last minutes
29
00:01:30,790 --> 00:01:33,270
that we also have an alternative here.
30
00:01:33,270 --> 00:01:35,740
We could also create a new meetup folder
31
00:01:35,740 --> 00:01:38,760
instead of the file, move the file in there,
32
00:01:38,760 --> 00:01:41,660
and then rename it to index.js.
33
00:01:41,660 --> 00:01:45,100
And that would then be loaded in exactly the same way.
34
00:01:45,100 --> 00:01:47,320
It's up to you which approach you prefer,
35
00:01:47,320 --> 00:01:52,320
you need that sub-folder approach if you need nested routes,
36
00:01:52,320 --> 00:01:55,290
but we will not have any nested routes here,
37
00:01:55,290 --> 00:01:58,080
so in this case, it's really up to you.
38
00:01:58,080 --> 00:02:01,090
And I will go for this sub-folder approach here.
39
00:02:01,090 --> 00:02:03,240
But again, it's your choice.
40
00:02:03,240 --> 00:02:06,610
And then we also need this detail page
41
00:02:06,610 --> 00:02:09,630
which we load if a specific meetup was clicked,
42
00:02:09,630 --> 00:02:12,930
and we want to view the details of that meetup.
43
00:02:12,930 --> 00:02:15,380
And for this, we need a dynamic page
44
00:02:15,380 --> 00:02:17,700
because of course we'll have multiple meetups
45
00:02:17,700 --> 00:02:22,670
with different IDs and DID should be part of the URL,
46
00:02:22,670 --> 00:02:25,970
and then when we load the page we want to use that ID
47
00:02:25,970 --> 00:02:29,810
to fetch and to display the appropriate data.
48
00:02:29,810 --> 00:02:31,700
And we also learned how this worked.
49
00:02:31,700 --> 00:02:35,000
We can create a dynamic page with square brackets
50
00:02:35,000 --> 00:02:36,800
and then dot JS,
51
00:02:36,800 --> 00:02:40,550
and then simply use any identifier name of our choice
52
00:02:40,550 --> 00:02:42,053
between the square brackets.
53
00:02:42,990 --> 00:02:45,520
For example, meetup ID.
54
00:02:45,520 --> 00:02:48,840
And here we could also use the sub-folder approach.
55
00:02:48,840 --> 00:02:52,070
It also is available for dynamic pages.
56
00:02:52,070 --> 00:02:55,240
We could also create a folder named meetup ID
57
00:02:55,240 --> 00:02:56,800
between square brackets,
58
00:02:56,800 --> 00:03:01,210
and move that file in there and then it index.js.
59
00:03:01,210 --> 00:03:02,530
And that also works.
60
00:03:02,530 --> 00:03:04,770
That's something we haven't seen before,
61
00:03:04,770 --> 00:03:06,990
and that's why I'm showing it to you here
62
00:03:06,990 --> 00:03:10,210
because it is always important to be aware of the fact
63
00:03:10,210 --> 00:03:14,050
that you can also have dynamic folder names here,
64
00:03:14,050 --> 00:03:17,880
and then create dynamic nested pages if you need them.
65
00:03:17,880 --> 00:03:22,410
Or, like in this case, one single dynamic page.
66
00:03:22,410 --> 00:03:25,040
And the width that we got the page structure we want
67
00:03:25,040 --> 00:03:27,340
with those three pages.
68
00:03:27,340 --> 00:03:31,130
And hence we can now get started working on those pages.
69
00:03:31,130 --> 00:03:34,100
We can fill those components with some live,
70
00:03:34,100 --> 00:03:37,510
and then also step-by-step at data fetching
71
00:03:37,510 --> 00:03:40,423
and learn how NextJS helps us with that.
5748
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.