gpt4 book ai didi

laravel-5 - 使用 NPM 和 Laravel Mix 时,CKEDITOR 的基本路径不正确

转载 作者:行者123 更新时间:2023-12-04 20:31:15 24 4
gpt4 key购买 nike

当我尝试使用 NPM 将 CKEDITOR 包含到我的新 Laravel 5.5 项目中时,我在 Chrome 控制台中收到以下错误(对 local.dev 使用 laravel Valet):

app.js:16991 GET https://local.dev/chart/config.js?t=H7HG 
app.js:16991 GET https://local.dev/chart/skins/moono-lisa/editor.css?t=H7HG
app.js:16991 GET https://local.dev/chart/lang/en.js?t=H7HG

我的 Laravel Mix 设置如下所示:
mix.js('resources/assets/js/app.js', 'public/js')
.babel(['resources/assets/js/libraries/*.js'], 'public/js/vendor.js')
.version();

我的 CKEDITOR 安装位于:
/vendor/ckeditor/ckeditor

我可以在站点加载后访问 CKEDITOR 实例。但是,如上所示,当我导航到 https://local.dev/chart 时, CKEDITOR 现在查找配置、皮肤和 lang 文件,其中/chart 附加到它的基本路径。

我做了一些研究,发现了一些相关问题,并且能够成功地使用 asset() 更改 base_path。相关的stackOverflow问题可以在 here找到和 here .

我想要做的是通过 NPM 拉入 CKEDITOR,使用 Laravel Mix 组合、版本和缩小我的脚本(一个用于供应商库,一个用于我的应用程序特定 JS),然后将这两个 .js 文件输出到这些Laravel 应用程序中的目录:
 /public/js/vendor.js
/public/js/app.js

Laravel mix 生成这两个文件,构建成功,所有其他库都运行良好。但是,CKEDITOR 丢失了它的基本路径并引发了寻找皮肤/langs/config.js 的错误——知道如何调整 CKEDITOR 的 basePath 以指向供应商文件,以便它停止发出这些错误并正常工作吗?

预先感谢您提供的任何帮助!

最佳答案

对于那些与我有同样问题的人,我找到了一个根本不涉及修改 CKEDITOR 的解决方法:

使用 Webpack 复制需要的 CKEDITOR 文件:

.copy('node_modules/ckeditor/config.js', 'public/js/ckeditor/config.js')
.copy('node_modules/ckeditor/styles.js', 'public/js/ckeditor/styles.js')
.copy('node_modules/ckeditor/contents.css', 'public/js/ckeditor/contents.css')
.copyDirectory('node_modules/ckeditor/skins', 'public/js/ckeditor/skins')
.copyDirectory('node_modules/ckeditor/lang', 'public/js/ckeditor/lang')
.copyDirectory('node_modules/ckeditor/plugins', 'public/js/ckeditor/plugins')

然后,在您的页面正文中,添加:
<script> var CKEDITOR_BASEPATH = '/js/ckeditor/'; </script>

这将允许 CKEDITOR 找到所需的文件。这对我来说有点难看,所以也许有更好的方法来做到这一点 - 如果是这样,请让我知道并拒绝这个答案。

关于laravel-5 - 使用 NPM 和 Laravel Mix 时,CKEDITOR 的基本路径不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46025505/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com