用webpack本地运行项目正常,但让其他人通过ip访问时出现问题?

错误描述

  1. 用vue3+ts构建的项目。基本结构就是登录页+内容页
  2. 本地运行正常,通过本地ip地址访问也正常。(运行的命令是"webpack serve --config webpack/webpack.config.js --env env=dev")
  3. 重点来了,别人通过我的ip能访问到登录页,但是点击登录进行路由跳转的时候出错了。控制台错误如下:
    图片.png

解决

破案了,是兼容问题。建议检查下报错人的浏览器版本,然后打包的时候做一下兼容即可。

webpack.common.js

{
    test: /\.(ts|js)$/, 
    exclude: /node_modules/,
    use: [
       {
          loader: "babel-loader"
       }
    ]
},

.babelrc

{
   "presets": [
      [
         "@babel/preset-env",
         {
            "targets": {
               // + 要兼容的浏览器
               "chrome": "71"
            }
         }
      ],
      [
         "@babel/typescript",
         {
            "allExtensions": true,
            "isTSX": true
         }
      ]
   ]
}

后记

之前也碰过一次兼容问题,根据我的经验,如果是兼容问题,一般都会报下面的错误,即语法错误。打包的时候降下js版本就可以了,如果没用打包工具就检查下语法。

Uncaught SyntaxError:unexpected token [xxx]
回复
阅读 638
1 个回答

单纯你看报错信息是你的路由守卫里面的业务代码报错了导致的。
uncaught error during route navigation
检查以下你的路由守卫里面的业务代码哪里有问题吧,贴上来的 routes.ts 里面没看到你有写。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏