当前位置: 首页 > 知识库问答 >
问题:

javascript - 在JS中引入其他JS,如何保证加载顺序?

雍河
2023-07-21

比如我在一个js文件中

import './A.js';import './B.js';import './C.js';

怎么保证 按A-B—C 的顺序引入?

一定要按script标签那样动态引入吗?比如,import这种引入有什么好方法吗?

function loadScript(url, doc = document) {    return new Promise(function (resolve) {        let script_ = doc.createElement("script");        script_.type = "text/javascript";        script_.src = url;        script_.onload = function () {              console.log(url);            resolve();        };        doc.body.appendChild(script_);    });}// Promise 链式调用 保证顺序loadScript('./A.js').then(()=>{    loadScript('./B.js')}).then(()=>{    loadScript('./C.js')})

共有4个答案

蓟捷
2023-07-21

这个有比较好的解决办法吗?

司寇经亘
2023-07-21

loadScript无缝替换成import

公西季
2023-07-21
import './A.js';import './B.js';import './C.js';

就是按照 A-B-C 顺序加载的

海叶秋
2023-07-21

loadScript无缝替换成import

import('./A.js').then(()=>{    return import('./B.js')}).then(()=>{    import('./C.js')})

你在某一页面直接使用了其他页面的方法?模块内的方法变量都是黑盒,不是全局的,除非手动设置window.xxx,使用的话需要在页面中把相关方法export导出去,然后在使用的页面import引入

 类似资料:
  • 本文向大家介绍vue如何引用其他组件(css和js),包括了vue如何引用其他组件(css和js)的使用技巧和注意事项,需要的朋友参考一下 1.vuejs组件之间的调用components 注意:报错Do not use built-in or reserved HTML elements as component id: 修改组件的名字,例如不能使用address为组件名字 组件名字不要使用内置

  • 如下,有什么办法在编辑器层面(比如vscode)保证代码安全么? 人总是会粗心大意的,if(1 == value)写起来也不符合直觉…… 或者有一些小技巧讨论一下也行。 TS伪代码如下

  • 问题内容: 对于AngularJS来说,这很陌生,我想我打算做的术语是延迟加载。我看过几个不同的博客,但没有找到纯粹使用AngularJS的完整工作解决方案。 我知道,如果将in 放到index.html中,则一切正常,我正在尝试减少在初始负载时减少的js数量。 脚本标签位于局部文件中时,它永远不会被加载,因此永远不会创建P1Ctrl。因此,当前,如果用户进入该应用程序而从未去过process55

  • vite如何导入静态.js文件呢?因为我的项目是monorepo架构的,其中有一个common包被其他vue项目所公共引用,然后这个common包里需要动态加载一些.js、.json文件,如何才能在common包放入这些静态文件并直接导入?我试了函数中使用import可以动态导入一些.json文件,但是对于.js文件导入不了。 之前是分别放在引入common的主项目下的public下,然后使用ax

  • 本文向大家介绍JS加载器如何动态加载外部js文件,包括了JS加载器如何动态加载外部js文件的使用技巧和注意事项,需要的朋友参考一下 今天在网上找到了一个可以动态加载js文件的js加载器,具体代码如下: JsLoader.js JsLoader.js测试 测试结果如下:

  • 需求: vue工程A中打开弹窗,内容为独立的验证码。 目的: 这个验证码业务不随工程A迭代升级,而是独立存在的。 1或 单独部署在某个云服务器上; 2或 与A工程一起部署,但与A工程完全0耦合。 问题: 能否将验证码业务独立成插件,在vue项目中import进来? 打包的时候,单独存在于dist中某个独立文件夹? 如何操作,请高手指点,十分感谢~!