您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關vue與django如何實現集成打包,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
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
注:本配置只是方便本地開發
關于“vue與django如何實現集成打包”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。