Skip to content
This repository was archived by the owner on Mar 7, 2025. It is now read-only.

Commit 6605d53

Browse files
authored
feat: support --ssr flag in dev mode (#302)
* support --ssr flag * tweaks
1 parent 6dd6832 commit 6605d53

File tree

11 files changed

+101
-2711
lines changed

11 files changed

+101
-2711
lines changed

packages/saber/lib/cli.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,21 @@ cli
1111
.option('--lazy', 'Enable lazy page compilation')
1212
.option('--port <port>', 'Server port', { default: 3000 })
1313
.option('--host <host>', 'Server host', { default: '0.0.0.0' })
14+
.option('--ssr', 'Enable server-side rendering')
1415
.option('--inspect-webpack', 'Inspect webpack config in your editor')
1516
.action((cwd = '.', options) => {
1617
setNodeEnv('development')
1718

18-
const { host, port, lazy } = options
19+
const { host, port, lazy, ssr } = options
1920
delete options.host
2021
delete options.port
2122
delete options.lazy
23+
delete options.ssr
2224
return require('..')(Object.assign({ cwd, dev: true }, options), {
2325
server: {
2426
host,
25-
port
27+
port,
28+
ssr
2629
},
2730
build: {
2831
lazy

packages/saber/lib/utils/validateConfig.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ module.exports = (config, { dev }) => {
5252
const server = struct(
5353
{
5454
host: 'string?',
55-
port: 'number?'
55+
port: 'number?',
56+
ssr: 'boolean?'
5657
},
5758
{
5859
host: '0.0.0.0',

packages/saber/package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@
5656
"url-loader": "^1.1.2",
5757
"vue": "^2.6.10",
5858
"vue-loader": "^15.5.1",
59+
"vue-meta": "^2.0.4",
60+
"vue-router": "^3.0.6",
61+
"vue-router-prefetch": "^1.6.0",
5962
"vue-server-renderer": "^2.6.10",
6063
"vue-template-compiler": "^2.6.10",
6164
"webpack": "^4.28.4",

packages/saber/vue-renderer/app/create-app.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ import './polyfills'
22
import '#cache/runtime-polyfills'
33
import { join, dirname } from 'path'
44
import Vue from 'vue'
5+
import Meta from 'vue-meta'
56
import layouts from '#cache/layouts'
67
import createRouter from './router'
7-
import Meta from './vendor/vue-meta'
88
import Layout from './components/LayoutManager.vue'
99
import ClientOnly from './components/ClientOnly'
1010
import extendBrowserApi from '#cache/extend-browser-api'

packages/saber/vue-renderer/app/router.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import Vue from 'vue'
2-
import Router from './vendor/vue-router'
3-
import RoutePrefetch from './vendor/vue-router-prefetch'
2+
import Router from 'vue-router'
3+
import RoutePrefetch from 'vue-router-prefetch'
44
import routes from '#cache/routes'
55

66
Vue.use(Router)
7-
87
// Make `<RouterLink>` prefetch-able
98
Vue.use(RoutePrefetch, {
109
componentName: 'SaberLink',

packages/saber/vue-renderer/app/vendor/vue-meta.js

Lines changed: 0 additions & 11 deletions
This file was deleted.

packages/saber/vue-renderer/app/vendor/vue-router-prefetch.js

Lines changed: 0 additions & 2 deletions
This file was deleted.

0 commit comments

Comments
 (0)