首页 > 解决方案 > requirejs 模块搜索 .json.js 文件而不是 .json

问题描述

我遇到了一个问题,当我使用 require.js 模块调用mirage_smokes.json文件时,脚本搜索mirage_smokes.json.js无济于事。(显然,.js 扩展名不应该存在)

function getData() {
    require(['../JSON/mirage_smokes.json'], function(data) {
        document.getElementById(testJSON).innerHTML = data.number;
    });
}

在此处输入图像描述

什么可能导致错误?

标签: javascriptrequirejs

解决方案


RequireJS 默认为 javascript 文件,并会自动将扩展名添加到文件名的末尾。因此,您必须使用以下语法告诉 RequireJS 您正在查找 JSON 文件:

require(['json!yourfile.json'], function(data) {
     ...
})

或者,由于 RequireJS 为您将扩展名添加到文件名的末尾,如果您愿意,可以省略 .json 扩展名:

require(['json!yourfile'], function(data) {
     ...
})

推荐阅读