vue与django集成打包的实现方法


Posted in Javascript onNovember 11, 2019

1.首先创建 django项目 并在 django项目文件下创建vue项目

2.修改django项目文件下的setting.py

修改django模板路径 指向 vue项目的dist

TEMPLATES = [
  {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [BASE_DIR+"/vue-resources/dist"],
    'APP_DIRS': True,
    'OPTIONS': {
      'context_processors': [
        'django.template.context_processors.debug',
        'django.template.context_processors.request',
        'django.contrib.auth.context_processors.auth',
        'django.contrib.messages.context_processors.messages',
      ],
    },
  },
]

修改django静态文件路径

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/

STATIC_URL = '/static/'
STATICFILES_DIRS = [
  os.path.join(BASE_DIR, "vue-resources/dist/static/")
]

这样基本就可以了

3.vue打包配置

由于django和vue都可以起一个服务,导致多个域名这样测试api的时候就会需要跨域等等问题,而直接用run build 打包文件过于耗时 大概20-40秒时间。

理想的状态是,不用多个域名,且修改一个文件能快速打包。 那么最好的方式就是提高build的速度。

我的方式是:

1.复制wepack.dev.config.js文件 起名 webpack.watch.config.js
2.修改配置信息

(1)添加输出配置 (用这个配置打包大概2-3秒)

output: {
    path: config.build.assetsRoot,
    filename: utils.assetsPath('js/[name].[hash].js'),
    chunkFilename: utils.assetsPath('js/[id].[hash].js')
   },

(2)可选修改可有效提高打包速度 (用这个配置大概在1秒内)

devtool: false,

3.创建新的打包命令 package.json

"scripts": {
  ...
  "watch": "webpack --watch --config build/webpack.watch.conf.js",
  ...
 },

这样就实现了监听更新的效果 npm run watch

注:本配置只是方便本地开发

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
ajax上传时参数提交不更新等相关问题
Dec 11 Javascript
使用javascript控制cookie显示和隐藏背景图
Feb 12 Javascript
node.js中的fs.rmdir方法使用说明
Dec 16 Javascript
js 求时间差的实现代码
Apr 26 Javascript
javascript数组去重常用方法实例分析
Apr 11 Javascript
浅谈ES6 模板字符串的具体使用方法
Nov 07 Javascript
vue.js项目nginx部署教程
Apr 05 Javascript
详解Vue.js中.native修饰符
Apr 24 Javascript
vue自定义一个v-model的实现代码
Jun 21 Javascript
javascript中函数的写法实例代码详解
Oct 28 Javascript
简述pm2常用命令集合及配置文件说明
May 30 Javascript
ES6中异步对象Promise用法详解
Jul 31 Javascript
微信小程序监听用户登录事件的实现方法
Nov 11 #Javascript
javascript 高级语法之继承的基本使用方法示例
Nov 11 #Javascript
JS 遍历 json 和 JQuery 遍历json操作完整示例
Nov 11 #jQuery
javascript/jquery实现点击触发事件的方法分析
Nov 11 #jQuery
jquery ajax 请求小技巧实例分析
Nov 11 #jQuery
javascript 对象 与 prototype 原型用法实例分析
Nov 11 #Javascript
javascript json对象小技巧之键名作为变量用法分析
Nov 11 #Javascript
You might like
全国FM电台频率大全 - 11 浙江省
2020/03/11 无线电
php下的权限算法的实现
2007/04/28 PHP
第四章 php数学运算
2011/12/30 PHP
如何判断php mysqli扩展类是否开启
2016/12/24 PHP
使用PHP访问RabbitMQ消息队列的方法示例
2018/06/06 PHP
无语,javascript居然支持中文(unicode)编程!
2007/04/12 Javascript
找到了一篇jQuery与Prototype并存的冲突的解决方法
2007/08/29 Javascript
IE与firefox之jquery用法区别
2008/10/03 Javascript
js解析json读取List中的实体对象示例
2014/03/11 Javascript
对new functionName()定义一个函数的理解
2014/05/22 Javascript
浅析javascript中function 的 length 属性
2014/05/27 Javascript
jQuery插件slick实现响应式移动端幻灯片图片切换特效
2015/04/12 Javascript
基于jQuery实现拖拽图标到回收站并删除功能
2015/11/25 Javascript
非常实用的js验证框架实现源码 附原理方法
2016/06/08 Javascript
js学习总结_轮播图之渐隐渐现版(实例讲解)
2017/07/17 Javascript
JS获取日期的方法实例【昨天,今天,明天,前n天,后n天的日期】
2017/09/28 Javascript
Vue实现购物车场景下的应用
2017/11/27 Javascript
layui的面包屑或者表单不显示的解决方法
2019/09/05 Javascript
100行代码实现vue表单校验功能(小白自编)
2019/11/19 Javascript
纯JS实现五子棋游戏
2020/05/28 Javascript
vue实现简单计算商品价格
2020/09/14 Javascript
pandas数据分组和聚合操作方法
2018/04/11 Python
Python基于多线程实现ping扫描功能示例
2018/07/23 Python
Python3爬虫学习之爬虫利器Beautiful Soup用法分析
2018/12/12 Python
Django实现分页显示效果
2019/10/31 Python
matplotlib部件之矩形选区(RectangleSelector)的实现
2021/02/01 Python
CSS3实现自定义Checkbox特效实例代码
2017/04/24 HTML / CSS
使用css创建三角形 使用CSS3创建3d四面体原理及代码(html5实践)
2013/01/06 HTML / CSS
美国休闲服装品牌:J.Crew Factory
2017/03/04 全球购物
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
Ibatis如何使用动态表名
2015/07/12 面试题
《胖乎乎的小手》教学反思
2014/02/26 职场文书
会务接待方案
2014/02/27 职场文书
我的长生果教学反思
2014/04/28 职场文书
宣传普通话标语
2014/06/27 职场文书
MySQL 中如何归档数据的实现方法
2022/03/16 SQL Server