起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1516|回复: 4

[结贴] 使用require引用的js文件的加载时机的问题

[复制链接]

14

主题

55

帖子

141

积分

初级会员

Rank: 2

积分
141
QQ
发表于 2015-11-3 15:05:27 | 显示全部楼层 |阅读模式
一直认为使用require引用js文件时,js文件应该在程序执行到require语句时才被加载。但是发现并不是这样,无论我把require语句写在哪,js文件都是一起就全部被加载进来,并且在onDeviceReady之前就被加载。

测试代码如下:
if(false){
        alert("load test");
        require("$UI/YiLife/common/test")
}

test.js :

define(function(require){
        debugger;
        alert("testloaded");
});

运行时弹出了testloaded提示,没有弹出load test提示。

这不符合我的预期,请问这里有问题吗?
testjs.png
发表于 2015-11-3 15:23:50 | 显示全部楼层
if(false){

代码当然不执行了
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

14

主题

55

帖子

141

积分

初级会员

Rank: 2

积分
141
QQ
 楼主| 发表于 2015-11-3 15:26:13 | 显示全部楼层
liangyongfei 发表于 2015-11-3 15:23
if(false){

代码当然不执行了

我问的是js的加载时机...

按理说test.js不应该被加载是吧,但是实际上被加载了。
回复 支持 反对

使用道具 举报

发表于 2015-11-3 16:05:09 | 显示全部楼层
yedaoq 发表于 2015-11-3 15:26
我问的是js的加载时机...

按理说test.js不应该被加载是吧,但是实际上被加载了。 ...

require的加载机制就是先全部扫描一遍。
如果你想判断加载可以使用这种方法
if(..)
require([ "./js/data" ], function(data) {
});


但是依赖这个模块的内容只能写在后面的回调里
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

14

主题

55

帖子

141

积分

初级会员

Rank: 2

积分
141
QQ
 楼主| 发表于 2015-11-3 16:50:28 | 显示全部楼层
liangyongfei 发表于 2015-11-3 16:05
require的加载机制就是先全部扫描一遍。
如果你想判断加载可以使用这种方法
if(..)

这样子,好吧,多谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-23 06:20 , Processed in 0.055272 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表