import () 动态加载的 JS 文件路径不对,想要添加一个 base_url 该怎么弄?[两问]

import()动态加载的js文件路径不对,想要添加一个base_url该怎么弄?
import(node_modules里面的某个模块).then(...) 动态加载 js 文件,如截图所示,提示 js 文件不存在。实际上文件是存在的,只是相对路径不对,必须改成下面这样的才行

http://w.toa.cn/laravel54/public/124.js
http://w.toa.cn/laravel54/public/32.js
http://w.toa.cn/laravel54/public/83.js

一问:让 webpack 打包后的资源路径不是网站根目录,而是相对于 /laravel54/public 这样的目录。请问这该怎么弄?求教……
答案:在 laravel-mix 里面配置 publicPath 选项即可解决问题。

file二问:一波刚平一波又起,这次是 mavonEditor 的图标字体显示不出来了,同样的是路径错误…… 咋弄哦?

import () 动态加载的 JS 文件路径不对,想要添加一个 base_url 该怎么弄?【两问】如上图,对于 element-ui 里面的图标同样出不来了,本应该显示向上、向下的箭头的,不是 □、|

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 7

仍然没能解决这个问题,昨晚到今天,一直没能解决。目前我是想到了一个办法:设置 mavonEditor 为 “后编译”,然后利用 laravel-mix 里面配置的 publicPath 选项,将前端资源与 mavonEditor 一起打包,应该会让图标显示出来的。问题是:怎样实现 mavonEditor 的 “后编译” 呢?

5年前 评论

麻烦大了,element-ui 里面也存在同样的问题(0 楼图 3 所示)

5年前 评论

差!鉆牛角钻了两天搞不定这个…… 真把我给逼急了,最后不得已,只能采用最为原始但是的确有效的办法给解决了…… 简单、粗暴、缺乏技术含量。

5年前 评论

不客气

    output: {
        publicPath: '/',
        filename: '[name].js',
        //chunkFilename: 'js/[name].[hash:5].js'
        chunkFilename: 'js/[name].js?id=[chunkhash:20]'
    },
5年前 评论
zhaiduting (楼主) 5年前

折腾啊,建议去掉 laravel-mixvue cli 3,,,

5年前 评论
zhaiduting (楼主) 5年前
largezhou (作者) 5年前
zhaiduting (楼主) 5年前

刚刚试了一下,这个 publicPath 还是有问题……

    // output: {
    //     publicPath: process.env.APP_PATH+ '/',   //法1,可行!
    // }

    output: {
        publicPath: '/',                            //法2,不行……
        filename: '[name].js',
        //chunkFilename: 'js/[name].[hash:5].js'
        chunkFilename: 'js/[name].js?id=[chunkhash:20]'
    },

方法 2 访问下列资源都不存在的
http://w.toa.cn/js/83.js?id=5514c5e43f4621b1d009
http://w.toa.cn/fonts/vendor/mavon-editor/dist/fontello.woff2?8d4a4e6f7431d0d7fa92b1df20f38161
改成下面的链接才能访问(添加相对路径 /laravel54/public)
http://w.toa.cn/laravel54/public/js/83.js?id=5514c5e43f4621b1d009
http://w.toa.cn/laravel54/public/fonts/vendor/mavon-editor/dist/fontello.woff2?8d4a4e6f7431d0d7fa92b1df20f38161

方法 1 配置了这个相对路径,可行的!但是方法 1 只能加载 js 文件,如果 node_modules 里的文件包引入了字体图标,一样找不到。

file

5年前 评论

能看下你的 nginx 配置吗,如果是直接在 Laravel 里面使用不需要额外配置,默认配置就可以使用。

5年前 评论
zhaiduting (楼主) 5年前