Jon*_*mon 24 javascript vue.js vuejs3
我最近从 Vue 2 升级到 Vue 3,我的应用程序的某些部分在development模式下发出警告:
[Vue warn]:模板编译错误:具有副作用的标签(<script> 和 <style>)在客户端组件模板中被忽略。
在 Vue 2 中,这些警告只是隐藏在production. 然而,在 Vue 3 中,带有这些警告的页面完全崩溃,屏幕变成空白。他们运行良好development。
删除所有这些标签对我来说并不实际,<script>因为它们是由我的 CMS (Shopify) 动态插入的。
有什么方法可以让我在生产中捕获这些错误,这样它们就不会关闭我的网站吗?
Jon*_*mon 37
到目前为止,这是我找到的最好的解决方案。
代替:
<script>
// JS CODE HERE
</script>
Run Code Online (Sandbox Code Playgroud)
和:
<component :is="'script'">
// JS Here
</component>
Run Code Online (Sandbox Code Playgroud)
但是,我更喜欢全局设置,这样我就不必为每个插件都执行此操作。现在,如果我的团队中的任何人添加另一个 CMS 插件,我的应用程序感觉非常脆弱。
我不希望应用程序一遇到标签就崩溃<script>......
小智 11
就我而言,我<body> 首先将 id="app" 属性移至<div>,然后解决了问题
前:
<body id="app">
<div>
...
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
后:
<body>
<div id="app">
...
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
有点晚了,但同样的事情发生在我身上,我想我有解决方案。至少就我而言。
您必须将脚本嵌入到 index.html 中的结束正文标记之前。问题是(我想)你把它放在主 div 中。
它应该看起来像这样:
<body>
<div id="app">
</div>
<script src="./main.js"></script>
</body>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32144 次 |
| 最近记录: |