背景:做地区跟行业级联下拉选择,因为想做成可以搜索的,所以必须一次加载数据,后台有做memcache缓存,但因为数据量大,还是比较费时间,所以做成本地文件,简单记录一下
准备数据,放到static下
修改build/webpack.dev.conf.js
加入如下代码
// 加载json文件 const express = require(\'express\') const app = express() let areaData = require(\'../static/data/area.json\') let industryData = require(\'../static/data/industry.json\') let apiRoutes = express.Router() app.use(\'/api\', apiRoutes)
然后再devServer加入如下代码
before(app) { app.get(\'/api/area\', (req, res) => { res.json({ data: areaData }) }) app.get(\'/api/industry\', (req, res) => { res.json({ data: industryData }) }) }
页面发送的请求
//原请求发往后台 this.$http.get(PreURL+\'tree_area\', {emulateJSON: true}).then(Response=>{ this.areas = Response.data.data this.getIndustrys() }) //修改后直接走前端路由 this.$http.get(\'/api/area\', {emulateJSON: true}).then(Response=>{ this.areas = Response.data.data this.getIndustrys() })
访问速度ok
参考