Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不使用绝对url的情况下从多个路径加载require.js?_Javascript_Jquery_Html_Requirejs - Fatal编程技术网

Javascript 如何在不使用绝对url的情况下从多个路径加载require.js?

Javascript 如何在不使用绝对url的情况下从多个路径加载require.js?,javascript,jquery,html,requirejs,Javascript,Jquery,Html,Requirejs,我的目录结构如下: ├── index.html ├── static │ └── js │ ├── main.js │ ├── jquery.js │ └── require.js └── subfolder └── index.html 在我的顶级index.html中,我像这样加载require.js,它可以工作: <script data-main="static/js/main" src="static/js/require.mi

我的目录结构如下:

├── index.html
├── static
│   └── js
│       ├── main.js
│       ├── jquery.js
│       └── require.js
└── subfolder
    └── index.html
在我的顶级
index.html
中,我像这样加载require.js,它可以工作:

<script data-main="static/js/main" src="static/js/require.min.js"></script>
这将导致“脚本错误:jquery”,并且对于my
main
模块的每个依赖项也是如此

require.js的
baseUrl
设置为
static/js
。因为这些页面是本地使用的,所以我不能使用绝对url。如何让require.js从子文件夹中工作

main.js文件的内容:

require.config({
    baseUrl: 'static/js',
    paths: {
        'jquery': 'jquery-2.0.3',
    }
});

require(['jquery'], function($) { ... }

解决方案是根本不设置
baseUrl

如果在配置中没有显式设置baseUrl,则默认值将是加载require.js的HTML页面的位置。如果使用数据主属性,则该路径将成为baseUrl


删除
baseUrl
设置导致上述示例正常工作。

显示main.js文件。是否尝试过
baseUrl:'../static/js'
?如果我这样做,则顶级
index.html
将停止工作。
require.config({
    baseUrl: 'static/js',
    paths: {
        'jquery': 'jquery-2.0.3',
    }
});

require(['jquery'], function($) { ... }