首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在构建时而不是运行时构建静态对象数组?

在构建时而不是运行时构建静态对象数组?
EN

Stack Overflow用户
提问于 2021-04-13 17:15:09
回答 1查看 36关注 0票数 0

我希望避免在我的vue代码中尝试管理多个静态数组。目前,我有一个用于i18Next的长json,并且正在使用它在运行时为vue-treeselect生成必备的对象数组。但我可以看到它在磨练,性能明显滞后。

因为我实际上不需要在运行时构建这些数组,有没有构建/开发时的方法呢?

将i18next json转换为数组目前是由

代码语言:javascript
复制
export function walk(item) {
    const mainArray = [];
    Object.keys(item).forEach((key) => {
        const objectLiteral = {};
        objectLiteral.id = key;
        objectLiteral.label = 'later - gen key';
        if (typeof item[key] === "object") {
            
            const arrayTemp = [];
            //we need to create an array of objects here and assign them to 'children' in the parent
            Object.keys(item[key]).forEach((key2) => {
                if (key2.slice(-3) === 'gen') {
                    objectLiteral.label = item[key][key2];
                } else { 
                const objectTemp = {};
                objectTemp.id = key2;
                objectTemp.label = item[key][key2];
                arrayTemp.push(objectTemp);
                }
            });
            objectLiteral.children = arrayTemp;
        }
        mainArray.push(objectLiteral)
    });
    return mainArray;
}

我使用vite作为开发/构建环境

EN

回答 1

Stack Overflow用户

发布于 2021-04-13 17:36:43

根据您为项目使用的构建工具,您总是可以在bundler的构建管道中生成这些内容。

例如,在Webpack中,您可以简单地运行一个脚本并将结果作为变量注入,因为它只是一个JavaScript。

https://webpack.js.org/plugins/define-plugin/

其他构建工具也能够在构建步骤中运行脚本。

编辑:正如baradhili自己提到的,你可以通过“package.json script.js”在节点中设置一个脚本,例如在构建期间使用其他构建工具运行脚本。这样,您就可以预先构建数据数组。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67072004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档