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 相关文章推荐
js css后面所带参数含义介绍
Aug 18 Javascript
jQuery EasyUI Dialog拖不下来如何解决
Sep 28 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
May 17 Javascript
Node.js环境下JavaScript实现单链表与双链表结构
Jun 12 Javascript
详解Angular2中Input和Output用法及示例
May 21 Javascript
Vue cli 引入第三方JS和CSS的常用方法分享
Jan 20 Javascript
VUEX采坑之路之获取不到$store的解决方法
Nov 08 Javascript
JS实现字体背景跑马灯
Jan 06 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
Jun 05 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
Aug 03 Javascript
js实现简易ATM功能
Oct 27 Javascript
jQuery实现手风琴特效
Jan 11 jQuery
微信小程序监听用户登录事件的实现方法
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
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
2007/03/29 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
php遍历解析xml字符串的方法
2016/05/05 PHP
php基于openssl的rsa加密解密示例
2016/07/11 PHP
HTML IMG标签 onload 内存溢出导致浏览器CPU占用过高
2021/03/09 Javascript
Javascript 面向对象 继承
2010/05/13 Javascript
JqGrid web打印实现代码
2011/05/31 Javascript
JS实现匀速运动的代码实例
2013/11/29 Javascript
JavaScript制作的可折叠弹出式菜单示例
2014/04/04 Javascript
js设置控件的隐藏与显示的两种方法
2014/08/21 Javascript
js钢琴按钮波浪式图片排列效果代码分享
2015/08/26 Javascript
牛叉的Jquery——Jquery与DOM对象的互相转换及DOM的三种操作
2015/10/29 Javascript
Vue.js动态添加、删除选题的实例代码
2016/09/30 Javascript
Javascript前端经典的面试题及答案
2017/03/14 Javascript
如何优雅的在一台vps(云主机)上面部署vue+mongodb+express项目
2019/01/20 Javascript
通过JS运行机制的角度说说作用域
2019/03/12 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
在react项目中使用antd的form组件,动态设置input框的值
2020/10/24 Javascript
angular *Ngif else用法详解
2020/12/15 Javascript
Python中用startswith()函数判断字符串开头的教程
2015/04/07 Python
Python中线程编程之threading模块的使用详解
2015/06/23 Python
python里运用私有属性和方法总结
2019/07/08 Python
Python Pandas 箱线图的实现
2019/07/23 Python
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
详解pandas获取Dataframe元素值的几种方法
2020/06/14 Python
python如何获得list或numpy数组中最大元素对应的索引
2020/11/16 Python
Selenium获取登录Cookies并添加Cookies自动登录的方法
2020/12/04 Python
利用HTML5 Canvas制作键盘及鼠标动画的实例分享
2016/03/15 HTML / CSS
canvas简单连线动画的实现代码
2020/02/04 HTML / CSS
德国隐形眼镜店:LuckyLens
2018/07/29 全球购物
可以在一个PHP文件里面include另外一个PHP文件两次吗
2015/05/22 面试题
工伤赔偿协议书范本
2014/04/15 职场文书
环境科学专业教师求职信
2014/07/12 职场文书
中学生清明节演讲稿
2015/03/18 职场文书
银行柜员工作心得体会
2016/01/23 职场文书
win10+RTX3050ti+TensorFlow+cudn+cudnn配置深度学习环境的方法
2022/06/25 Servers