estoy usando webpack loader para inyectar mi aplicación vue en django, aquí está el código:
Ajustes :
WEBPACK_LOADER = { 'DEFAULT':{ 'BUNDLE_DIR_NAME':'/', 'STATS_FILE':os.path.join(BASE_DIR,'aptim-frontend/dist','webpack-stats.json') }}archivo de configuración vue:
const BundleTracker = require("webpack-bundle-tracker"); module.exports = { // on Windows you might want to set publicPath: "http://127.0.0.1:8080/" publicPath: "http://0.0.0.0:8080/", outputDir: "./dist/", chainWebpack: (config) => { config.optimization.splitChunks(false); config .plugin("BundleTracker") .use(BundleTracker, [{ filename: "../frontend/webpack-stats.json" }]); config.resolve.alias.set("__STATIC__", "static"); config.devServer .public("http://0.0.0.0:8080") .host("0.0.0.0") .port(8080) .hotOnly(true) .watchOptions({ poll: 1000 }) .https(false) .headers({ "Access-Control-Allow-Origin": ["*"] });},};Y la línea html donde obtengo el error está en el índice html
{% render_bundle 'app' %}ERROR: valor de excepción: los índices de cadena deben ser números enteros
Tuve el mismo problema en el gran curso de Udemy The Complete Guide to Django REST Framework and Vue JS . Probablemente no puedas leer la respuesta de Michele Saba si no estás suscrito.
Probablemente tenga algo que ver con las versiones del paquete y que sean alfa. degradando a
trabajó para mi. Bajar de categoría usando:
npm install --save-dev webpack-bundle-tracker@0.4.3Mismo problema. La configuración a continuación funcionó para mí
Degradar Webpack-bundle-tracker según lo dicho por @Frans
npm install --save-dev webpack-bundle-tracker@0.4.3 En vue.config.js
config .plugin('BundleTracker') .use(BundleTracker, [{filename: './webpack-stats.json'}]) Luego elimine la carpeta dist con el antiguo webpack-stats.json
En esta versión y con esta configuración, el archivo webpack-stats.json se genera en el frontend , no en el frontend/dist Por lo tanto, debe cambiar STATS_FILE en settings.py (por ejemplo, si su proyecto Vue es frontend )
'STATS_FILE': os.path.join(BASE_DIR, 'frontend','webpack-stats.json'),Luego reinicie los servidores web Vue y Django.
Valor de excepción: los índices de cadena deben ser números enteros
Recibí este extraño error también, confirmé la degradación a webpack-bundle-tracker@0.4.3 funciona.