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 相关文章推荐
JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述
Apr 15 Javascript
js实现拖拽 闭包函数详细介绍
Nov 25 Javascript
JS编程小常识很有用
Nov 26 Javascript
使用jquery实现简单的ajax
Jul 08 Javascript
javascript函数中的3个高级技巧
Sep 22 Javascript
require.js与bootstrap结合实现简单的页面登录和页面跳转功能
May 12 Javascript
JavaScript面向对象精要(下部)
Sep 12 Javascript
关于laydate.js加载laydate.css路径错误问题解决
Dec 27 Javascript
JS代码实现电脑配置检测功能
Mar 21 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
Jun 22 Javascript
vue路由导航守卫和请求拦截以及基于node的token认证的方法
Apr 07 Javascript
js+html+css实现手动轮播和自动轮播
Dec 30 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
风味层面去分析咖啡油脂
2021/03/03 咖啡文化
TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例
2018/09/03 PHP
PHP+redis实现微博的拉模型案例详解
2019/07/10 PHP
使用IE的地址栏来辅助调试Web页脚本
2007/03/08 Javascript
非常不错的功能强大代码简单的管理菜单美化版
2008/07/09 Javascript
Javascript学习笔记4 Eval函数
2010/01/11 Javascript
JavaScript常用对象的方法和属性小结
2012/01/24 Javascript
Javascript中自动切换焦点实现代码
2012/12/15 Javascript
使用JavaScript获取电池状态的方法
2014/05/03 Javascript
百度地图自定义控件分享
2015/03/04 Javascript
javascript结合canvas实现图片旋转效果
2015/05/03 Javascript
jquery自定义插件——window的实现【示例代码】
2016/05/06 Javascript
jQuery+ajax+asp.net获取Json值的方法
2016/06/08 Javascript
xmlplus组件设计系列之分隔框(DividedBox)(8)
2017/05/02 Javascript
vue 实现滚动到底部翻页效果(pc端)
2019/07/31 Javascript
Vue组件间通信 Vuex的用法解析
2019/08/05 Javascript
node获取客户端ip功能简单示例
2019/08/24 Javascript
如何通过shell脚本自动生成vue文件详解
2019/09/10 Javascript
如何解决jQuery 和其他JS库的冲突
2020/06/22 jQuery
js实现从右往左匀速显示图片(无缝轮播)
2020/06/29 Javascript
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
理解Python中的类与实例
2015/04/27 Python
实例讲解Python中global语句下全局变量的值的修改
2016/06/16 Python
解决pycharm界面不能显示中文的问题
2018/05/23 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
python模拟实现斗地主发牌
2020/01/07 Python
快速解决Django关闭Debug模式无法加载media图片与static静态文件
2020/04/07 Python
基于打开pycharm有带图片md文件卡死问题的解决
2020/04/24 Python
怎样建立和理解非常复杂的声明?例如定义一个包含N 个指向返回 指向字符的指针的函数的指针的数组?
2013/03/19 面试题
二手房购房意向书范本
2014/04/01 职场文书
就职演讲稿范文
2014/05/19 职场文书
领导干部群众路线教育实践活动剖析材料
2014/10/10 职场文书
北京英语导游词
2015/02/12 职场文书
在职证明书模板
2015/06/15 职场文书
2016国培研修心得体会
2016/01/08 职场文书
前端canvas中物体边框和控制点的实现示例
2022/08/05 Javascript