mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-22 13:45:18 +00:00
chore: add examples directory (#115)
This commit is contained in:
parent
5aa59c2ca5
commit
ca466e08a1
@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"globals": {
|
"globals": {
|
||||||
"NodeJS": true
|
"NodeJS": true,
|
||||||
|
"$fetch": true
|
||||||
},
|
},
|
||||||
"plugins": ["jsdoc"],
|
"plugins": ["jsdoc"],
|
||||||
"extends": [
|
"extends": [
|
||||||
|
4
examples/async-data/nuxt.config.ts
Normal file
4
examples/async-data/nuxt.config.ts
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
import { defineNuxtConfig } from '@nuxt/kit'
|
||||||
|
|
||||||
|
export default defineNuxtConfig({
|
||||||
|
})
|
12
examples/async-data/package.json
Normal file
12
examples/async-data/package.json
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"name": "example-async-data",
|
||||||
|
"private": true,
|
||||||
|
"devDependencies": {
|
||||||
|
"nuxt3": "^0.5.1"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"dev": "nu dev",
|
||||||
|
"build": "nu build",
|
||||||
|
"start": "node .output/server"
|
||||||
|
}
|
||||||
|
}
|
19
examples/async-data/pages/index.vue
Normal file
19
examples/async-data/pages/index.vue
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
Page visits: {{ data.count }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import { defineNuxtComponent, asyncData } from '@nuxt/app'
|
||||||
|
|
||||||
|
export default defineNuxtComponent({
|
||||||
|
setup () {
|
||||||
|
const { data } = asyncData('time', () => $fetch('/api/count'))
|
||||||
|
|
||||||
|
return {
|
||||||
|
data
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
3
examples/async-data/server/api/count.js
Normal file
3
examples/async-data/server/api/count.js
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
let ctr = 0
|
||||||
|
|
||||||
|
export default () => ({ count: ++ctr })
|
5
examples/hello-world/app.vue
Normal file
5
examples/hello-world/app.vue
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
Hello Nuxt!
|
||||||
|
</div>
|
||||||
|
</template>
|
4
examples/hello-world/nuxt.config.ts
Normal file
4
examples/hello-world/nuxt.config.ts
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
import { defineNuxtConfig } from '@nuxt/kit'
|
||||||
|
|
||||||
|
export default defineNuxtConfig({
|
||||||
|
})
|
12
examples/hello-world/package.json
Normal file
12
examples/hello-world/package.json
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"name": "example-hello-world",
|
||||||
|
"private": true,
|
||||||
|
"devDependencies": {
|
||||||
|
"nuxt3": "^0.5.1"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"dev": "nu dev",
|
||||||
|
"build": "nu build",
|
||||||
|
"start": "node .output/server"
|
||||||
|
}
|
||||||
|
}
|
12
examples/pages/app.vue
Normal file
12
examples/pages/app.vue
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<NuxtLink to="/">
|
||||||
|
Home
|
||||||
|
</NuxtLink>
|
||||||
|
<NuxtLink to="/about">
|
||||||
|
About
|
||||||
|
</NuxtLink>
|
||||||
|
|
||||||
|
<NuxtPage />
|
||||||
|
</div>
|
||||||
|
</template>
|
4
examples/pages/nuxt.config.ts
Normal file
4
examples/pages/nuxt.config.ts
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
import { defineNuxtConfig } from '@nuxt/kit'
|
||||||
|
|
||||||
|
export default defineNuxtConfig({
|
||||||
|
})
|
12
examples/pages/package.json
Normal file
12
examples/pages/package.json
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"name": "example-pages",
|
||||||
|
"private": true,
|
||||||
|
"devDependencies": {
|
||||||
|
"nuxt3": "^0.5.1"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"dev": "nu dev",
|
||||||
|
"build": "nu build",
|
||||||
|
"start": "node .output/server"
|
||||||
|
}
|
||||||
|
}
|
5
examples/pages/pages/about.vue
Normal file
5
examples/pages/pages/about.vue
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
About
|
||||||
|
</div>
|
||||||
|
</template>
|
5
examples/pages/pages/index.vue
Normal file
5
examples/pages/pages/index.vue
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
Home
|
||||||
|
</div>
|
||||||
|
</template>
|
5
examples/with-vite/app.vue
Normal file
5
examples/with-vite/app.vue
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
Hello Nuxt+Vite!
|
||||||
|
</div>
|
||||||
|
</template>
|
5
examples/with-vite/nuxt.config.ts
Normal file
5
examples/with-vite/nuxt.config.ts
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
import { defineNuxtConfig } from '@nuxt/kit'
|
||||||
|
|
||||||
|
export default defineNuxtConfig({
|
||||||
|
vite: true
|
||||||
|
})
|
12
examples/with-vite/package.json
Normal file
12
examples/with-vite/package.json
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"name": "example-with-vite",
|
||||||
|
"private": true,
|
||||||
|
"devDependencies": {
|
||||||
|
"nuxt3": "^0.5.1"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"dev": "nu dev",
|
||||||
|
"build": "nu build",
|
||||||
|
"start": "node .output/server"
|
||||||
|
}
|
||||||
|
}
|
@ -3,6 +3,7 @@
|
|||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"workspaces": [
|
"workspaces": [
|
||||||
"packages/*",
|
"packages/*",
|
||||||
|
"examples/*",
|
||||||
"docs"
|
"docs"
|
||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
@ -12,6 +13,8 @@
|
|||||||
"docs": "yarn nu dev docs",
|
"docs": "yarn nu dev docs",
|
||||||
"nu": "./node_modules/.bin/nu",
|
"nu": "./node_modules/.bin/nu",
|
||||||
"play": "yarn run nu dev playground",
|
"play": "yarn run nu dev playground",
|
||||||
|
"example": "yarn workspace example-$0 dev",
|
||||||
|
"example:build": "yarn workspace example-$0 build",
|
||||||
"lint": "eslint --ext .vue,.ts,.js .",
|
"lint": "eslint --ext .vue,.ts,.js .",
|
||||||
"test": "yarn lint && jest",
|
"test": "yarn lint && jest",
|
||||||
"test:compat": "TEST_COMPAT=1 jest",
|
"test:compat": "TEST_COMPAT=1 jest",
|
||||||
|
@ -1,37 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<nuxt-link to="/">
|
|
||||||
Home
|
|
||||||
</nuxt-link>
|
|
||||||
<h2>{{ $route.path }}</h2>
|
|
||||||
<pre>{{ foo }}</pre>
|
|
||||||
<pre>{{ bar }}</pre>
|
|
||||||
<pre>{{ from }}</pre>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { defineNuxtComponent, asyncData } from '@nuxt/app'
|
|
||||||
const waitFor = (ms = 0) => new Promise(resolve => setTimeout(resolve, ms))
|
|
||||||
|
|
||||||
export default defineNuxtComponent({
|
|
||||||
setup () {
|
|
||||||
const { data: foo } = asyncData('foo', async () => {
|
|
||||||
await waitFor(500)
|
|
||||||
return { foo: true }
|
|
||||||
})
|
|
||||||
const { data: bar } = asyncData('bar', async () => {
|
|
||||||
await waitFor(500)
|
|
||||||
return { bar: true }
|
|
||||||
})
|
|
||||||
|
|
||||||
const { data: from } = asyncData('from', () => ({ from: process.server ? 'server' : 'client' }))
|
|
||||||
|
|
||||||
return {
|
|
||||||
foo,
|
|
||||||
bar,
|
|
||||||
from
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
</script>
|
|
@ -1,39 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
<nuxt-link to="/">
|
|
||||||
Home
|
|
||||||
</nuxt-link>
|
|
||||||
<h2>{{ $route.path }}</h2>
|
|
||||||
<pre>{{ foo }}</pre>
|
|
||||||
<pre>{{ bar }}</pre>
|
|
||||||
<pre>{{ from }}</pre>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { useAsyncData } from '@nuxt/app'
|
|
||||||
const waitFor = (ms = 0) => new Promise(resolve => setTimeout(resolve, ms))
|
|
||||||
|
|
||||||
export default {
|
|
||||||
async setup () {
|
|
||||||
const asyncData = useAsyncData()
|
|
||||||
|
|
||||||
const { data: foo } = await asyncData('foo', async () => {
|
|
||||||
await waitFor(500)
|
|
||||||
return { foo: true }
|
|
||||||
})
|
|
||||||
const { data: bar } = await asyncData('bar', async () => {
|
|
||||||
await waitFor(500)
|
|
||||||
return { bar: true }
|
|
||||||
})
|
|
||||||
|
|
||||||
const { data: from } = await asyncData('from', () => ({ from: process.server ? 'server' : 'client' }))
|
|
||||||
|
|
||||||
return {
|
|
||||||
foo,
|
|
||||||
bar,
|
|
||||||
from
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
@ -1,28 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<h2>
|
...
|
||||||
Hello world
|
|
||||||
</h2>
|
|
||||||
<strong>Playground pages</strong>
|
|
||||||
<ul>
|
|
||||||
<li v-for="link of links" :key="link">
|
|
||||||
<nuxt-link :to="link">
|
|
||||||
{{ link }}
|
|
||||||
</nuxt-link>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { defineComponent } from 'vue'
|
import { defineNuxtComponent } from '@nuxt/app'
|
||||||
import { useRouter } from 'vue-router'
|
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineNuxtComponent({
|
||||||
setup () {
|
|
||||||
const links = useRouter().getRoutes().filter(route => ['index', '404'].includes(route.name) === false).map(route => route.path)
|
|
||||||
|
|
||||||
return { links }
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
32
yarn.lock
32
yarn.lock
@ -6190,6 +6190,38 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"example-async-data@workspace:examples/async-data":
|
||||||
|
version: 0.0.0-use.local
|
||||||
|
resolution: "example-async-data@workspace:examples/async-data"
|
||||||
|
dependencies:
|
||||||
|
nuxt3: ^0.5.1
|
||||||
|
languageName: unknown
|
||||||
|
linkType: soft
|
||||||
|
|
||||||
|
"example-hello-world@workspace:examples/hello-world":
|
||||||
|
version: 0.0.0-use.local
|
||||||
|
resolution: "example-hello-world@workspace:examples/hello-world"
|
||||||
|
dependencies:
|
||||||
|
nuxt3: ^0.5.1
|
||||||
|
languageName: unknown
|
||||||
|
linkType: soft
|
||||||
|
|
||||||
|
"example-pages@workspace:examples/pages":
|
||||||
|
version: 0.0.0-use.local
|
||||||
|
resolution: "example-pages@workspace:examples/pages"
|
||||||
|
dependencies:
|
||||||
|
nuxt3: ^0.5.1
|
||||||
|
languageName: unknown
|
||||||
|
linkType: soft
|
||||||
|
|
||||||
|
"example-with-vite@workspace:examples/with-vite":
|
||||||
|
version: 0.0.0-use.local
|
||||||
|
resolution: "example-with-vite@workspace:examples/with-vite"
|
||||||
|
dependencies:
|
||||||
|
nuxt3: ^0.5.1
|
||||||
|
languageName: unknown
|
||||||
|
linkType: soft
|
||||||
|
|
||||||
"exec-sh@npm:^0.3.2":
|
"exec-sh@npm:^0.3.2":
|
||||||
version: 0.3.6
|
version: 0.3.6
|
||||||
resolution: "exec-sh@npm:0.3.6"
|
resolution: "exec-sh@npm:0.3.6"
|
||||||
|
Loading…
Reference in New Issue
Block a user