gpt4 book ai didi

javascript - 在需要模块之前使用 require.js 运行公共(public)代码

转载 作者:行者123 更新时间:2023-11-29 10:42:08 26 4
gpt4 key购买 nike

我正在使用 Moment.js在国际站点的几个不同页面上。每个页面都使用 require.js 在 Moment 中 require。

瞬间让你set the locale以该语言环境格式显示日期。但是,必须在加载 Moment 的每个页面上运行此代码(因为我不确定用户首先加载哪个页面)。

var Moment = require('moment');
// configure locale

我想做的是将代码移动到配置语言环境的某个类似先决条件的步骤,这样我就不必记住在每个页面上配置语言环境(并且它变得更干)。所以我所要做的就是

var Moment = require('moment');

并且 pre-require 步骤已经配置了语言环境。

这可能吗?

最佳答案

是的,这是可能的,就像这样:

  1. 创建一个名为 moment-configured 的模块:

    define(['moment'], function (moment) {
    // Call what you need to call to configure moment...
    return moment;
    });
  2. 使用 map 配置,这样加载 moment 的每个人都真正加载了您的 moment-configured 模块,而 moment-configured 加载了真实的时刻:

    map: {
    '*': {
    moment: 'moment-configured'
    },
    'moment-configured': {
    moment: 'moment'
    }
    }

此方法改编自 RequireJS' documentation 中的示例关于如何使用 noConflict 自动加载 jQuery。使用此 map 配置,所有需要 moment 的模块都将获得 moment-configured,除了 moment-configured 将获得真正的 时刻

关于javascript - 在需要模块之前使用 require.js 运行公共(public)代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26807294/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com