henxihuannishuo
十三怪
2021-06-13 15:35
采纳率: 0%
浏览 220
已结题

Vue-router自动写入路由编译后无法访问线上地址

在使用Vue-router时,我使用require.context的方法实现自动写入路由,代码如下

 

在本地是没有任何问题的,但是当我build之后,将dist文件上传至服务器后,无法访问路由,报错如下

 

debugger找到报错的地方如下

 

我猜测是编译的问题,但是找不到解决的办法,希望有大手子看到能为我答疑解惑一下,感激不尽

 

我测试了一下,如果将push到routes里的对象直接写死在new Route里,是没有问题的。。那么问题来了,到底是啥问题,求赐教

  • 点赞
  • 收藏

7条回答 默认 最新

  • Lifemustrough
    Lifemustrough 2021-06-15 13:03

    这句话不对

    点赞 1 评论
  • technologist_30
    CSDN专家-张老师 2021-06-13 19:18

    你鼠标放入叉上面,错误信息发我一下

    点赞 评论
  • Feng_wwf
    NDSC专家-王文峯 2021-06-13 21:33

    看一下这个例子,望采纳,谢谢

    老套路,先说出现这种问题的原因:

    在做vue项目时,如果我们在组件中需要一个变量,哪怕这个变量最开始是没值的,我们也必须先在data中注册这个变量;

    只有这样,我们的这个变量才能是响应式的,不然就失去了响应式的功能;

    问题就在这里,好多人(也包括我自己)的习惯就是写变量的值等于’’(空)或者null;

    map和foreach方法只能对数组或者类数组进行遍历,如果不是数组就会报错,很明显我们的初始值不是一个数组;

    解决办法
    其实很简单,在vue组件中注册变量的初始化值时不要随意的写一个空或者null,让他等于[](空数组)就可以了;

    例子:

    data() {
        return {
        // 如果这个值在后面是当做一个数组使用,并且需要去遍历的时候需要这样写
          value: [] 
        }
      }
     

    点赞 评论
  • weixin_36931308
    weixin_36931308 2021-06-15 16:40

    index.js 17行代码是什么

    点赞 评论
  • qaz1128123
    wccode 2021-06-16 00:22

    你的文件夹目录只有一级嘛?

    点赞 评论
  • qaz1128123
    wccode 2021-06-16 12:43

     

     

    点赞 评论
  • QA_Assistant
    有问必答小助手 2021-06-16 14:34

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m

    点赞 评论

相关推荐