gpt4 book ai didi

JavaScript 文件依赖于 Yii2 中的 JavaScript 代码块(用于 dojo 配置)

转载 作者:搜寻专家 更新时间:2023-10-31 20:37:19 25 4
gpt4 key购买 nike

我正在尝试使用 Yii 2.0 注册 dojo javascript 文件。根据 dojo 文档,dojo 配置的代码块必须在实际的 dojo.js 之前加载才能被考虑。但是,在 HTML 输出中,我的自定义 javascript 代码始终在 dojo.js 之后加载。

这是我的代码:

$this->registerJs('dojoConfig="async:true,isDebug:true";', $this::POS_HEAD,'dojoconfiguration');
$this->registerJsFile('/dojo_toolkit/dojo/dojo.js', ['depends' => [\yii\web\JqueryAsset::className()], 'position' => yii\web\View::POS_HEAD]);

在 HTML 中它看起来像这样:

<script src="/dojo_toolkit/dojo/dojo.js"></script>
<script type="text/javascript">dojoConfig="async:true,isDebug:true";</script>

有什么建议吗?

最佳答案

对于相同的位置,Yii2 总是先放置内联脚本,然后才是实际的外部文件。所以你不能通过将它们都添加到 <head> 来解决这个问题.

最好给registerJsFile()调用POS_END在最后加载它。它仍将在 document.ready() 之前加载打电话。

这样您就可以确保在加载之前解析 header 中的配置。您可以使用的最坏情况POS_BEGIN在 body 标签打开后立即加载它,但由于加载 javascript 是阻塞的,我会尽量避免这种情况。

关于JavaScript 文件依赖于 Yii2 中的 JavaScript 代码块(用于 dojo 配置),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31964857/

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