我已經在Vuejs中構建了一個相當簡單的web應用程序,該應用程序使用webpack默認的npm run dev
命令運行。 Vue應用程序正在使用我使用django-rest-framework構建的Django的api。每當Vue應用程序發生變化時,它都會自動重新加載,這非常棒。用django開發和部署Vuejs應用程序
現在我想運行使用Django代替的WebPack的Vue公司的應用程序。我的意思是說Django會用一個html模板文件作出響應,而Vuejs應用程序將運行在單個頁面應用程序的html文件上。
我現在正在做的事情是第一次運行這個命令:
npm run build
然後我的DIST/靜態/文件夾中的文件複製到Django的靜態文件夾。最後將其加載到模板:
的index.html
{% load static %}
<!DOCTYPE html>
<html>
<head>
...
...
<link href="{% static "css/app.e446b60204fec1f9f5510c711523ffca.css" %}" rel=stylesheet>
</head>
<body>
<div id="app"></div>
<script src="{% static "js/manifest.88376ea5d07804f39ff7.js" %}"></script>
<script src="{% static "js/vendor.e0e5105739e9947a23e7.js" %}"></script>
<script src="{% static "js/app.571e9140518a5bae898c.js" %}"></script>
</body>
</html>
現在以後,如果我需要改變Vue公司的應用程序,我必須重新構建它,複製文件並加載它裏面的模板,這看起來很長。
所以,我希望能有更好的和短期的方式來混淆兩者Django和Vuejs。
我想我會做的是改變'NPM運行build'把文件直接到你的Django靜態文件夾,因爲有真正把他們在dist /靜態的文件夾,然後轉移他們沒有好處。我不確定爲什麼生成的文件名不總是相同的,這意味着你不應該改變你的模板。我自己對Vue很新,但希望這有助於! –
除了@ChristopherShroba,也許['django-webpack-builder'](https://github.com/owais/django-webpack-loader)可能會幫助你。 –
@ChristopherShroba是的,我認爲這是一種方法。你如何處理bulid文件的命名? – Robin