Skip to content

Commit 5321e34

Browse files
committed
Merge branch 'hotfix/1.1.1'
2 parents d3d5f85 + ce39bbe commit 5321e34

File tree

2 files changed

+20
-18
lines changed

2 files changed

+20
-18
lines changed

index.js

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@ module.exports = (api, projectOptions) => {
1313

1414
function chain(api, projectOptions) {
1515
return config => {
16-
const options = createOptions(api, projectOptions);
16+
const options = createPluginOptions(api, projectOptions);
17+
if (options.onlyProduction && process.env.NODE_ENV !== "production") {
18+
return;
19+
}
1720
const renderer = createRenderer(api, projectOptions);
1821
const paths = resolvePaths(api, projectOptions.outputDir, projectOptions.assetsDir);
1922
const prerenderOptions = {
@@ -31,16 +34,18 @@ function chain(api, projectOptions) {
3134
}
3235
};
3336
config.plugin("pre-render").use(PrerenderSPAPlugin, [prerenderOptions]);
34-
config.plugin("html").tap(args => {
35-
args[0].template = api.resolve("public/index.html");
36-
args[0].filename = "app.html";
37-
return args;
38-
});
37+
if (process.env.NODE_ENV === "production") {
38+
config.plugin("html").tap(args => {
39+
args[0].template = api.resolve("public/index.html");
40+
args[0].filename = "app.html";
41+
return args;
42+
});
43+
}
3944
};
4045
}
4146

4247
function createRenderer(api, projectOptions) {
43-
const rendererConfig = createConfig(api, projectOptions);
48+
const rendererConfig = createRendererConfig(api, projectOptions);
4449
const renderer = new Renderer(rendererConfig);
4550
renderer.preServer = Prerenderer => {
4651
if (projectOptions.baseUrl) {
@@ -70,11 +75,8 @@ function createRenderer(api, projectOptions) {
7075
return renderer;
7176
}
7277

73-
function createConfig(api, projectOptions) {
74-
let options = createOptions(api, projectOptions);
75-
if (options.onlyProduction && process.env.NODE_ENV !== "production") {
76-
return;
77-
}
78+
function createRendererConfig(api, projectOptions) {
79+
let options = createPluginOptions(api, projectOptions);
7880
let rendererConfig = {
7981
headless: options.headless,
8082
maxConcurrentRoutes: options.parallel ? 4 : 1
@@ -88,29 +90,29 @@ function createConfig(api, projectOptions) {
8890
return rendererConfig;
8991
}
9092

91-
function createOptions(api, projectOptions) {
93+
function createPluginOptions(api, projectOptions) {
9294
let options;
9395
let oldConfigPath = api.resolve(".prerender-spa.json");
9496
try {
9597
options = pickle(projectOptions, CONFIG_OBJ_PATH);
9698
if (existsSync(oldConfigPath)) {
9799
Object.assign(options, JSON.parse(readFileSync(oldConfigPath).toString("utf-8")));
98100
}
99-
}
100-
catch {
101+
} catch {
101102
if (existsSync(oldConfigPath)) {
102103
options = JSON.parse(readFileSync(oldConfigPath).toString("utf-8"));
103104
}
104105
}
105-
return options;
106+
// return options; // TODO: Fix #16 permanently
107+
return Object.assign(options, { onlyProduction: true }); // Force disable on development build, workaround for #16
106108
}
107109

108110
function resolvePaths(api, baseUrl, assetsDir) {
109111
return {
110112
outputDir: api.resolve(baseUrl),
111113
staticDir: api.resolve(baseUrl),
112114
assetsDir: api.resolve(path.join(baseUrl, assetsDir)),
113-
indexPath: api.resolve(path.join(baseUrl, "app.html"))
115+
indexPath: api.resolve(path.join(baseUrl, process.env.NODE_ENV === "production" ? "app.html" : "index.html"))
114116
};
115117
}
116118

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "vue-cli-plugin-prerender-spa",
3-
"version": "1.1.0",
3+
"version": "1.1.1",
44
"description": "Vue CLI plugin to add prerendering to your application",
55
"main": "index.js",
66
"author": {

0 commit comments

Comments
 (0)