javascript - 使用 NPM 汇总解决 require('some.json')
问题描述
我有一个使用 Rollup 的包构建脚本,但在我的代码中,我有一个简单的 JSON“require”导入,“rollup”由于某种原因无法解析,并且没有错误,任何人都知道原因以及如何解决它(它只留下该代码,只保留原始代码而不转换它)?
const translation = require('../translation.json');
我的汇总配置脚本“ rollup.config.js ”如下所示:
import resolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
import replace from '@rollup/plugin-replace';
import json from '@rollup/plugin-json';
export default {
input: 'src/javascript/script.js',
output: {
file: 'dist/script.js',
format: 'iife'
},
plugins: [
resolve(),
commonjs(),
replace({
'process.env.LANG': JSON.stringify(process.env.LANG)
}),
json()
]
};
我的初衷是使用动态变量来解决 require 导入问题,该变量允许我以下列方式构造文件路径:
const translation = require(`../translation_${process.env.LANG}.json`);
但我什至无法得到使用 Rollup 解决的简单要求
PS:我可以让它与 webpack 一起工作,但它会产生太多的代码垃圾,以至于大多数基本的捆绑代码难以阅读,或者在某些情况下不可读,所以尽量远离它
解决方案
推荐阅读
- f# - 如何对滑块的值更改事件做出反应?
- java - List 包含 Map 需要交换一对多关系中的值
- dictionary - 字典值计数
- python - 如何在 html 文件中返回有效的 MultiSelectField 数据
- python - open3d 中的 draw_geometries 函数使程序崩溃并出现以下错误:进程以退出代码 -1073741819 (0xC0000005) 完成
- ansible - Ansible 剧本和角色
- sql - 使用 Oracle 的 JSON_ARRAY 函数时删除反斜杠?
- flutter - Flutter 集成测试如果发生异常不会失败
- mysql - 指定为定义者 (''@'') 的用户不存在
- microsoft-teams - Teams 选项卡应用程序 - 在 Teams 之外隐藏 html 视图