我开始使用 Microsoft 提供的 Vue.js 模板创建 Azure 静态 Web 应用程序。它工作得很好,只有一个障碍:当我使用 Azure 静态 Web 应用程序模拟器在本地提供站点时,我正在努力使用 VS Code 调试最终缩小的 Vue.js 代码。
当我npm run serve
按照此处的说明提供 Vue.js 项目时,一切正常:https ://vuejs.org/v2/cookbook/debugging-in-vscode.html 。
VS Code 愉快地连接到 Google Chrome JS 调试器,见截图 1:
截图一:VS Code JS调试器成功连接Chrome调试Vue.js
这是我成功使用的 VS Code 的 launch.json 文件: 屏幕截图 2
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "pwa-chrome",
"request": "launch",
"name": "vuejs: chrome",
"url": "http://localhost:8080",
"breakOnLoad": true,
"webRoot": "${workspaceFolder}/src",
"sourceMapPathOverrides": {
"webpack:///src/*": "${webRoot}/*"
},
//"preLaunchTask": "vue_js_compile_and_start_azure"
}
]
}
当我想按照 Microsoft 说明使用 Azure 静态 Web 应用程序模拟器 ('swa') 时,问题就开始了。为什么我需要它?因为我想带上我自己的 Azure Functions 应用程序并将我的 Azure 静态 Web 应用程序链接到它。有关详细信息,请参阅此页面,我已对其进行设置并在云中对其进行了测试,效果很好:https ://docs.microsoft.com/en-us/azure/static-web-apps/functions-bring-your-拥有. 我想在本地使用 'swa' 模拟器的主要原因是因为它有助于轻松地路由 API 调用,并允许轻松简单地测试身份验证。只是它在 Vue.js 中表现不佳。
这是我尝试运行 SWA 模拟器的命令行: 屏幕截图 3
npm run build && ^
swa start ./dist --api http://localhost:7071
它可以工作,让我将我的 SWA 连接到端口 7071 上正在运行的 Azure Functions 应用程序(在另一个单独运行且正在运行的 VS Code 项目中),但问题是它必须使用我的项目的“dist”部分,这是一个缩小的以及由 webpack 从 Vue.js 创建的丑陋的 JS。此外,SWA 服务器需要继续运行,因此 VS Code 调试器永远无法正常启动,我无法像使用之前的命令那样调试和设置断点等。
有什么方法可以为“swa”Azure 模拟器提供一个未缩小的 Vue.js 项目开发版本,可以使用 VS Code 本身成功调试?我不想求助于使用控制台打印来调试,这太糟糕了。我喜欢 Azure 静态 Web 应用程序和功能,并希望能在这方面提供任何帮助。谢谢你。