vue-cli模拟数据,新版本升级后, 没有dev-server 文件了

vue

我们可以修改

因为最新版本的vue-cli已经放弃dev-server.js,只需在webpack.dev.conf.js配置就行

新版webpack.dev.conf.js配置如下:

代码1:

//模拟数据:1.首先

// nodejs开发框架express,用来简化操作

const express = require('express')

// 创建node.js的express开发框架的实例

const app = express()

// 引用的json地址

var appData = require('../data.json')

// json某一个key

var seller = appData.seller

var goods = appData.goods

var ratings = appData.ratings

var apiRoutes = express.Router()

app.use('/api', apiRoutes)

代码2:

//模拟数据:2.配置项

before(app){

app.get('/seller', (req, res) => {

res.json({

errno: 0,

data: seller

})

})

app.get('/goods', (req, res) => {

res.json({

errno: 0,

data: goods

})

})

app.get('/ratings', (req, res) => {

res.json({

errno: 0,

data: ratings

})

})

}

},

---------------------------------------------------------------------------------------------------------------

webpack.dev.conf.js整体配置完成是这样的:

'use strict'

const utils = require('./utils')

const webpack = require('webpack')

const config = require('../config')

const merge = require('webpack-merge')

const path = require('path')

const baseWebpackConfig = require('./webpack.base.conf')

const CopyWebpackPlugin = require('copy-webpack-plugin')

const HtmlWebpackPlugin = require('html-webpack-plugin')

const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')

const portfinder = require('portfinder')

//模拟数据:1.首先

// nodejs开发框架express,用来简化操作

const express = require('express')

// 创建node.js的express开发框架的实例

const app = express()

// 引用的json地址

var appData = require('../data.json')

// json某一个key

var seller = appData.seller

var goods = appData.goods

var ratings = appData.ratings

var apiRoutes = express.Router()

app.use('/api', apiRoutes)

const HOST = process.env.HOST

const PORT = process.env.PORT && Number(process.env.PORT)

const devWebpackConfig = merge(baseWebpackConfig, {

module: {

rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })

},

// cheap-module-eval-source-map is faster for development

devtool: config.dev.devtool,

// these devServer options should be customized in /config/index.js

devServer: {

clientLogLevel: 'warning',

historyApiFallback: {

rewrites: [

{ from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') },

],

},

hot: true,

contentBase: false, // since we use CopyWebpackPlugin.

compress: true,

host: HOST || config.dev.host,

port: PORT || config.dev.port,

open: config.dev.autoOpenBrowser,

overlay: config.dev.errorOverlay

? { warnings: false, errors: true }

: false,

publicPath: config.dev.assetsPublicPath,

proxy: config.dev.proxyTable,

quiet: true, // necessary for FriendlyErrorsPlugin

watchOptions: {

poll: config.dev.poll,

},

//模拟数据:2.配置项

before(app){

app.get('/seller', (req, res) => {

res.json({

errno: 0,

data: seller

})

})

app.get('/goods', (req, res) => {

res.json({

errno: 0,

data: goods

})

})

app.get('/ratings', (req, res) => {

res.json({

errno: 0,

data: ratings

})

})

}

},

plugins: [

new webpack.DefinePlugin({

'process.env': require('../config/dev.env')

}),

new webpack.HotModuleReplacementPlugin(),

new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.

new webpack.NoEmitOnErrorsPlugin(),

// https://github.com/ampedandwired/html-webpack-plugin

new HtmlWebpackPlugin({

filename: 'index.html',

template: 'index.html',

inject: true

}),

// copy custom static assets

new CopyWebpackPlugin([

{

from: path.resolve(__dirname, '../static'),

to: config.dev.assetsSubDirectory,

ignore: ['.*']

}

])

]

})

module.exports = new Promise((resolve, reject) => {

portfinder.basePort = process.env.PORT || config.dev.port

portfinder.getPort((err, port) => {

if (err) {

reject(err)

} else {

// publish the new Port, necessary for e2e tests

process.env.PORT = port

// add port to devServer config

devWebpackConfig.devServer.port = port

// Add FriendlyErrorsPlugin

devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({

compilationSuccessInfo: {

messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],

},

onErrors: config.dev.notifyOnErrors

? utils.createNotifierCallback()

: undefined

}))

resolve(devWebpackConfig)

}

})

})

转载于:https://www.cnblogs.com/shimily/articles/8778914.html

以上是 vue-cli模拟数据,新版本升级后, 没有dev-server 文件了 的全部内容, 来源链接: utcz.com/z/375796.html

回到顶部