【问题标题】:External script with icons loads when the page loads but the icons don't appear页面加载时加载带有图标的外部脚本但图标不出现
【发布时间】:2018-02-26 18:04:40
【问题描述】:

首先非常感谢您阅读我的问题!

我在一个 vue 文件中工作。在 App.vue 中,我导入了一个带有类似图标的外部 .js 文件

let recaptchaScript2 = document.createElement('script')
recaptchaScript2.setAttribute('src', '../static/js/uikit-icons.min.js')
document.head.appendChild(recaptchaScript2)

当我加载页面时,脚本就被加载了。 但图标不显示在页面上,在元素选项卡中是空的。然后,当我对代码进行小的随机更改时,vue 会“重新加载”页面(没有真正的刷新)。然后图标确实出现了!

我认为这可能是因为脚本出于某种原因重新加载,然后在其他所有内容之后加载。但是当我添加一个间隔来执行 500 毫秒后加载脚本的代码时,脚本最后加载,但图标不显示!

所以我想知道:这里发生了什么?我错过了什么?

非常感谢您阅读我的问题!

【问题讨论】:

  • 那么请把我的评论加起来。
  • 我没听懂你说的,什么是'ank'?
  • 刚刚回复:First of all **hank** you very much for reading my question!
  • 告诉vue-loader,您使用import Icons from '../static/js/uikit-icons.min.js'; 明确依赖该文件,这应该会强制包含它。
  • 我试过了,但是脚本根本没有用这个导入

标签: javascript vue.js vuejs2 vue-component


【解决方案1】:

所以,我想我有一个解决办法。

试图在 vue 文件中对此进行 frankenstein 没有奏效。所以我只是把它放在 index.html 中

<body>
  <div id="app"></div>
  <!-- built files will be auto injected -->
  <script src="static/js/uikit.min.js"></script>
  <script src="static/js/uikit-icons.min.js"></script>
</body>

这看起来是一个简单的解决方案,但我真的认为我之前尝试过但没有奏效。但从那时到现在,我了解到脚本可能使用 jquery,所以几个小时前我用 npm 安装了它。也许它修复了它,我真的不知道。但是我的图标显示没有刷新,所以我很高兴。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-27
    • 1970-01-01
    • 1970-01-01
    • 2021-02-23
    • 1970-01-01
    • 2013-11-08
    相关资源
    最近更新 更多