在使用 popup.js 的时候,配合requirejs。老是出问题呢?

发布于 2022-09-04 00:28:31 字数 162 浏览 15 评论 0

在使用 popup.js 的时候,配合requirejs。老是出问题呢?图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

眼眸里的快感 2022-09-11 00:28:32

页面路径:
图片描述

main.js:

require.config({
    //配置模块的路径
    //模块名称 :模块路径(如果是跟main.js在同一路径,那就不用写目录了),主要针对有版本号的一些脚本,配置路径
    paths:{
        "jquery":'jquery-3.1.1.min',
        "alert":"lib/alert",
        "test":"lib/test",
        "popup":"lib/popup"
    }    
});
//调用库文件等,因为这里是初始化
require(['jquery'], function () {
    //当页面加载成功后,开始运行代码
    $(document).ready(function (e){
        if(modules){
            require(modules);
        }else{
            console.log("没有模块需要加载!");    
        }
    });
});

index.html:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <script src="js/require.js" data-main="js/main.js"></script>
</head>
<body>
    <script>
        var modules=["lib/index","lib/test"];
    </script>
</body>
</html>

index.js

define(["jquery","alert","lib/test","popup"],function(){
    console.log("index js");
    ShowAlertAndRedirect("asdf", "asdf", '')
});

问题答案:
1,index页面调用的模块,路径跟名字,要跟index.html页面加载的模块的路径跟名字一致。
假如index页面需要lib下面的test模块,然后在页面中写出来了。main.js中require.config中的paths也配置test模块路径了。在index.js中,依赖test模块,并且test模块加载成功后才能执行index.js,那这时,index.js中,define的时候就必须这样写:

define(['这里的test模块路径及名称要跟index.html页面路径一样'],function(){
    
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文