V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
vue.js
gzf6
V2EX  ›  Vue.js

请教, vue3.0+vite+typescript 生产环境部署

  •  
  •   gzf6 · 125 天前 · 1364 次点击
    这是一个创建于 125 天前的主题,其中的信息可能已经有所发展或是发生改变。

    开发环境正常,生产环境报如下错误:

    vendor.9aa51dcf.js:1 TypeError: l is not a function
        at eO (vendor.9aa51dcf.js:72)
        at JE (vendor.9aa51dcf.js:72)
        at vendor.9aa51dcf.js:77
        at E (vendor.9aa51dcf.js:77)
        at O (vendor.9aa51dcf.js:77)
        at uv (vendor.9aa51dcf.js:15)
        at vendor.9aa51dcf.js:15
        at ft.n [as effect] (vendor.9aa51dcf.js:1)
        at ft.get value [as value] (vendor.9aa51dcf.js:1)
        at it (vendor.9aa51dcf.js:1)
    

    如何定位这类错误?

    第 1 条附言  ·  120 天前
    经排查,是国际化服务的加载顺序问题,顺便问一下,vue 里,写了一堆工具函数放在一个文件中,如何保证它的加载顺序。现在的情况是我写了一个 LocaleService.getLocale() ,在 store 中引用,会提示 getLocale() 不存在于 undefined,说明 LocaleService 没加载。
    8 条回复    2021-05-26 15:57:24 +08:00
    Curtion
        1
    Curtion   125 天前
    打开 sourceMap,看是哪里报错了
    gzf6
        2
    gzf6   125 天前
    @Curtion build 之后的文件,查看后是这里面的 l 报错,不知道具体对应哪里出错
    ```
    function mt(e, t, n, o=!0) {
    t && t.vnode;
    if (t) {
    let o = t.parent;
    const a = t.proxy
    , r = n;
    for (; o; ) {
    const t = o.ec;
    if (t)
    for (let n = 0; n < t.length; n++)
    if (!1 === t[n](e, a, r))
    return;
    o = o.parent
    }
    const l = t.appContext.config.errorHandler;
    if (l)
    return void ht(l, null, 10, [e, a, r])
    }
    !function(e, t, n, o=!0) {
    console.error(e)
    }(e, 0, 0, o)
    }
    ```
    Curtion
        3
    Curtion   125 天前   ❤️ 1
    https://vitejs.dev/config/#build-sourcemap 你在生产环境打开 sourcemap,然后就可以看到是哪报错了
    gzf6
        4
    gzf6   125 天前
    @Curtion 排查后是 element-plus 的问题,只要模板中出现 el 的组件就会报错,开发模式倒是正常的
    lupkcd
        5
    lupkcd   124 天前
    同遇到 element-plus 非全局引入 设置语言为中文 生产报错
    muunala10221
        6
    muunala10221   122 天前
    这好坑啊,最后怎么解决的
    iamkun
        7
    iamkun   120 天前
    方便提供一个可复现的 demo, 或贴一个 issue 地址?
    gzf6
        8
    gzf6   120 天前
    @iamkun 应该是我的国际化的服务的加载顺序问题,暂时去掉 i18n 的配置,直接配置 locale 后就好了
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1915 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 00:26 · PVG 08:26 · LAX 17:26 · JFK 20:26
    ♥ Do have faith in what you're doing.