RequireJS绝对路径产生脚本错误

Dar*_*ney 7 javascript amd requirejs

我有一个简单的文件,我正在使用requireJS加载依赖项define:

define([
    "dojo/_base/declare",
    "dojo/aspect",
    "local/path/to/myFile"
], function(
    declare,
    aspect,
    myFile
) { ...
Run Code Online (Sandbox Code Playgroud)

这应该工作,文件映射在requireJS配置中.

但是,如果我尝试使用绝对路径(完全相同的文件)访问其中一个文件:

define([
    "dojo/_base/declare",
    "dojo/aspect",
    "https://blah.com/absolute/path/to/myFile.js"
], function(
    declare,
    aspect,
    myFile
) { ... 
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

"message":"错误:\" https://blah.com/absolute/path/to/myFile.js \"的脚本错误,需要:/home/test_vds_jasmine/test/modules/myFile-spec4.js \nhttp://requirejs.org/docs/errors.html#scripterror \nat /home/node_modules/requirejs/require.js:168:17\n\nmakeError@/home/node_modules/requirejs/require.js:168:17 \nnewContext/context.onScriptError@/home/node_modules/requirejs/require.js:1738:36 \n"个

我已经尝试了所有方式的绝对路径,包括有和没有https,有和没有.js扩展但是我画了一个空白,错误信息根本没有帮助.

我是以错误的方式呼唤绝对的道路吗?有没有人有这样做的经验?

我必须使用绝对路径调用某些文件,或者我只是在本地调用所有文件,这是有正当理由的.

Nav*_*uja 5

试试这个,把你的URL放在requirejs配置中,如下所示:

requirejs.config({
        paths: { 'myFileRemote': 'https://blah.com/absolute/path/to/myFile.js' }
    });
Run Code Online (Sandbox Code Playgroud)

现在用上面的映射更新你的文件:

define([
    "dojo/_base/declare",
    "dojo/aspect",
    "myFileRemote"
], function(
    declare,
    aspect,
    myFile
) { ... 
Run Code Online (Sandbox Code Playgroud)