当前位置: 首页 > 面试题库 >

在Webpack中加载静态JSON文件

连文栋
2023-03-14
问题内容

我的代码在构造后的某个地方:

var getMenu = function () {
    return window.fetch("portal/content/json/menu.json").then(function (data) {
        return data.json();
    });
};

我尝试了webpack.config.js这个:

module: {
    loaders: [
        ...
        {
            test: /\.json$/,
            exclude: /node_modules/,
            use: [
                'file-loader?name=[name].[ext]&outputPath=portal/content/json'
            ]
        },
        ...
   ]
}

项目结构

dist
  content
     json
        menu.json <- this is missing

src
  content
     json
       menu.json <- source file

题:

webpack如何复制src/content/json/menu.jsondist/content/json/menu.json


问题答案:

fetch用于请求JSON文件,而这只会在运行时发生。此外,webpack只处理导入的任何内容。您希望它可以处理函数的参数,但是如果webpack这样做,则函数的每个参数都将被视为模块,这会破坏该函数的其他用途。

如果您希望装入程序启动,则可以导入文件。

import './portal/content/json/menu.json';

您还可以导入JSON并直接使用它,而不是在运行时获取它。Webpack 2 json- loader默认使用所有.json文件。您应该删除.json规则,并按如下所示导入JSON。

import menu from './portal/content/json/menu.json';

menu与您从getMenu函数中获得的JavaScript对象相同。



 类似资料:
  • 问题内容: 我想保留一个JSON文档来存储一些简单的数据,并且我需要此文档并在调用中使用JSON对象,以便可以使用它。这不是电话。我的意思是应该用于开发,但我确实希望在构建时编译文件,这与API 的实际调用不同,API的内容是动态的。 问题答案: 最简单的方法是为此使用requirejs json插件,这将使您也可以将文件包括在构建中。 https://github.com/millermedei

  • 问题内容: 我不知道如何使用webpack从node_modules库中加载任何CSS,例如,我已经安装了传单,每次加载尝试均失败。 您能否提供示例如何从node_modules加载静态样式? 我当前的webpack配置如下。另外,我正在使用,我的项目scss文件运行良好,我也可以解析静态CSS文件或向其中添加内容吗? 在哪里加载leaflet.css,注释掉了以下错误: 问题答案: 对于遇到类似

  • 我提供了一些静态文件,像图像和字体,没有任何问题。当我尝试对PDF文件做同样的操作时,我得到一个错误。 ./src/views/default/components/footer.js中出错 C:\resurs\repos\frontend\src\views\default\components\footer.js 5:17错误解析导入模块'src/includes/anvandaravtal_

  • 问题内容: 我正在本地计算机(Mac OS X)上运行Django的开发服务器(),无法加载CSS文件。 以下是settings.py中的相关条目: 在我的views.py中,我请求上下文: 在我的模板中,渲染正确: 变成: 文件实际所在的位置。我还确保所有文件都已收集。 我的urls.py中也包含以下几行: 我是Django的新手,所以可能缺少一些简单的知识-希望对您有所帮助。 问题答案: 请仔

  • 问题内容: 我正在本地计算机(Mac OS X)上运行Django的开发服务器(),无法加载CSS文件。 以下是settings.py中的相关条目: 在我的views.py中,我正在请求上下文: 在我的模板中,渲染正确: 变成: 文件实际所在的位置。我还确保所有文件都已收集。 我的urls.py中也包含以下几行: 我是Django的新手,所以可能缺少一些简单的知识-希望对您有所帮助。 问题答案:

  • 本文向大家介绍django静态文件加载的方法,包括了django静态文件加载的方法的使用技巧和注意事项,需要的朋友参考一下 在模板中往往要加载静态文件,如CSS, JavaScript,图片等。那么这些文件在django中如何才能正确加载呢? 首先要在settings文件中进行设置,关于静态文件的设置选项主要由以下几项: 1. STATIC_URL = '/static/' 指定静态文件查找的ur