Skip to content
This repository was archived by the owner on Oct 4, 2023. It is now read-only.

Commit fad1966

Browse files
Merge pull request #625 from thedevbob005/wbp4
Everything up to date
2 parents 4c6ee7b + 4e009ad commit fad1966

File tree

10 files changed

+180
-98
lines changed

10 files changed

+180
-98
lines changed

meta.js

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,32 @@ module.exports = {
5050
name: {
5151
type: 'string',
5252
required: true,
53-
message: 'Application Name'
53+
message: 'Application Name',
54+
default: 'your-app'
55+
},
56+
appid: {
57+
type: 'string',
58+
required: true,
59+
message: 'Application Id',
60+
default: 'com.example.yourapp'
61+
},
62+
appver: {
63+
type: 'string',
64+
required: true,
65+
message: 'Application Version',
66+
default: '0.0.1'
5467
},
5568
description: {
5669
type: 'string',
5770
required: false,
5871
message: 'Project description',
5972
default: 'An electron-vue project'
6073
},
74+
usesass: {
75+
type: 'confirm',
76+
message: 'Use Sass / Scss?',
77+
required: true
78+
},
6179
plugins: {
6280
type: 'checkbox',
6381
message: 'Select which Vue plugins to install',
@@ -127,10 +145,10 @@ module.exports = {
127145
deps (plugins) {
128146
let output = ''
129147
let dependencies = {
130-
'axios': '^0.16.1',
148+
'axios': '^0.18.0',
131149
'vue-electron': '^1.0.6',
132-
'vue-router': '^2.5.3',
133-
'vuex': '^2.3.1'
150+
'vue-router': '^3.0.1',
151+
'vuex': '^3.0.1'
134152
}
135153

136154
if (Object.keys(plugins).length > 0) output += ',\n'

template/.electron-vue/build.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ function build () {
7676

7777
function pack (config) {
7878
return new Promise((resolve, reject) => {
79+
config.mode = 'production'
7980
webpack(config, (err, stats) => {
8081
if (err) reject(err.stack || err)
8182
else if (stats.hasErrors()) {
@@ -103,6 +104,7 @@ function pack (config) {
103104

104105
{{#if_eq builder 'packager'}}
105106
function bundleApp () {
107+
buildConfig.mode = 'production'
106108
packager(buildConfig, (err, appPaths) => {
107109
if (err) {
108110
console.log(`\n${errorLog}${chalk.yellow('`electron-packager`')} says...\n`)
@@ -116,6 +118,7 @@ function bundleApp () {
116118
{{/if_eq}}
117119
function web () {
118120
del.sync(['dist/web/*', '!.gitkeep'])
121+
webConfig.mode = 'production'
119122
webpack(webConfig, (err, stats) => {
120123
if (err || stats.hasErrors()) console.log(err)
121124

@@ -144,4 +147,4 @@ function greeting () {
144147
})
145148
} else console.log(chalk.yellow.bold('\n lets-build'))
146149
console.log()
147-
}
150+
}

template/.electron-vue/dev-runner.js

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -41,21 +41,21 @@ function logStats (proc, data) {
4141
function startRenderer () {
4242
return new Promise((resolve, reject) => {
4343
rendererConfig.entry.renderer = [path.join(__dirname, 'dev-client')].concat(rendererConfig.entry.renderer)
44-
44+
rendererConfig.mode = 'development'
4545
const compiler = webpack(rendererConfig)
46-
hotMiddleware = webpackHotMiddleware(compiler, {
47-
log: false,
48-
heartbeat: 2500
46+
hotMiddleware = webpackHotMiddleware(compiler, {
47+
log: false,
48+
heartbeat: 2500
4949
})
5050

51-
compiler.plugin('compilation', compilation => {
52-
compilation.plugin('html-webpack-plugin-after-emit', (data, cb) => {
51+
compiler.hooks.compilation.tap('compilation', compilation => {
52+
compilation.hooks.htmlWebpackPluginAfterEmit.tapAsync('html-webpack-plugin-after-emit', (data, cb) => {
5353
hotMiddleware.publish({ action: 'reload' })
5454
cb()
5555
})
5656
})
5757

58-
compiler.plugin('done', stats => {
58+
compiler.hooks.done.tap('done', stats => {
5959
logStats('Renderer', stats)
6060
})
6161

@@ -80,10 +80,10 @@ function startRenderer () {
8080
function startMain () {
8181
return new Promise((resolve, reject) => {
8282
mainConfig.entry.main = [path.join(__dirname, '../src/main/index.dev.js')].concat(mainConfig.entry.main)
83-
83+
mainConfig.mode = 'development'
8484
const compiler = webpack(mainConfig)
8585

86-
compiler.plugin('watch-run', (compilation, done) => {
86+
compiler.hooks.watchRun.tapAsync('watch-run', (compilation, done) => {
8787
logStats('Main', chalk.white.bold('compiling...'))
8888
hotMiddleware.publish({ action: 'compiling' })
8989
done()
@@ -114,7 +114,7 @@ function startMain () {
114114
}
115115

116116
function startElectron () {
117-
electronProcess = spawn(electron, ['--inspect=5858', '.'])
117+
electronProcess = spawn(electron, ['--inspect=5858', path.join(__dirname, '../dist/electron/main.js')])
118118

119119
electronProcess.stdout.on('data', data => {
120120
electronLog(data, 'blue')
@@ -175,4 +175,4 @@ function init () {
175175
})
176176
}
177177

178-
init()
178+
init()

template/.electron-vue/webpack.renderer.config.js

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@ const webpack = require('webpack')
88

99
const BabiliWebpackPlugin = require('babili-webpack-plugin')
1010
const CopyWebpackPlugin = require('copy-webpack-plugin')
11-
const ExtractTextPlugin = require('extract-text-webpack-plugin')
11+
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
1212
const HtmlWebpackPlugin = require('html-webpack-plugin')
13+
const { VueLoaderPlugin } = require('vue-loader')
1314

1415
/**
1516
* List of node_modules to include in webpack bundle
@@ -43,12 +44,23 @@ let rendererConfig = {
4344
}
4445
},
4546
{{/if}}
47+
{{#if usesass}}
48+
{
49+
test: /\.scss$/,
50+
use: ['vue-style-loader', 'css-loader', 'sass-loader']
51+
},
52+
{
53+
test: /\.sass$/,
54+
use: ['vue-style-loader', 'css-loader', 'sass-loader?indentedSyntax']
55+
},
56+
{{/if}}
57+
{
58+
test: /\.less$/,
59+
use: ['vue-style-loader', 'css-loader', 'less-loader']
60+
},
4661
{
4762
test: /\.css$/,
48-
use: ExtractTextPlugin.extract({
49-
fallback: 'style-loader',
50-
use: 'css-loader'
51-
})
63+
use: ['vue-style-loader', 'css-loader']
5264
},
5365
{
5466
test: /\.html$/,
@@ -71,7 +83,8 @@ let rendererConfig = {
7183
extractCSS: process.env.NODE_ENV === 'production',
7284
loaders: {
7385
sass: 'vue-style-loader!css-loader!sass-loader?indentedSyntax=1',
74-
scss: 'vue-style-loader!css-loader!sass-loader'
86+
scss: 'vue-style-loader!css-loader!sass-loader',
87+
less: 'vue-style-loader!css-loader!less-loader'
7588
}
7689
}
7790
}
@@ -111,7 +124,8 @@ let rendererConfig = {
111124
__filename: process.env.NODE_ENV !== 'production'
112125
},
113126
plugins: [
114-
new ExtractTextPlugin('styles.css'),
127+
new VueLoaderPlugin(),
128+
new MiniCssExtractPlugin({filename: 'styles.css'}),
115129
new HtmlWebpackPlugin({
116130
filename: 'index.html',
117131
template: path.resolve(__dirname, '../src/index.ejs'),

template/.electron-vue/webpack.web.config.js

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@ const webpack = require('webpack')
77

88
const BabiliWebpackPlugin = require('babili-webpack-plugin')
99
const CopyWebpackPlugin = require('copy-webpack-plugin')
10-
const ExtractTextPlugin = require('extract-text-webpack-plugin')
10+
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
1111
const HtmlWebpackPlugin = require('html-webpack-plugin')
12+
const { VueLoaderPlugin } = require('vue-loader')
1213

1314
let webConfig = {
1415
devtool: '#cheap-module-eval-source-map',
@@ -30,12 +31,23 @@ let webConfig = {
3031
}
3132
},
3233
{{/if}}
34+
{{#if usesass}}
35+
{
36+
test: /\.scss$/,
37+
use: ['vue-style-loader', 'css-loader', 'sass-loader']
38+
},
39+
{
40+
test: /\.sass$/,
41+
use: ['vue-style-loader', 'css-loader', 'sass-loader?indentedSyntax']
42+
},
43+
{{/if}}
44+
{
45+
test: /\.less$/,
46+
use: ['vue-style-loader', 'css-loader', 'less-loader']
47+
},
3348
{
3449
test: /\.css$/,
35-
use: ExtractTextPlugin.extract({
36-
fallback: 'style-loader',
37-
use: 'css-loader'
38-
})
50+
use: ['vue-style-loader', 'css-loader']
3951
},
4052
{
4153
test: /\.html$/,
@@ -55,7 +67,8 @@ let webConfig = {
5567
extractCSS: true,
5668
loaders: {
5769
sass: 'vue-style-loader!css-loader!sass-loader?indentedSyntax=1',
58-
scss: 'vue-style-loader!css-loader!sass-loader'
70+
scss: 'vue-style-loader!css-loader!sass-loader',
71+
less: 'vue-style-loader!css-loader!less-loader'
5972
}
6073
}
6174
}
@@ -83,7 +96,8 @@ let webConfig = {
8396
]
8497
},
8598
plugins: [
86-
new ExtractTextPlugin('styles.css'),
99+
new VueLoaderPlugin(),
100+
new MiniCssExtractPlugin({filename: 'styles.css'}),
87101
new HtmlWebpackPlugin({
88102
filename: 'index.html',
89103
template: path.resolve(__dirname, '../src/index.ejs'),

0 commit comments

Comments
 (0)