首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用browserify加载特定时刻区域设置

如何使用browserify加载特定时刻区域设置
EN

Stack Overflow用户
提问于 2017-08-09 04:16:56
回答 1查看 911关注 0票数 1

我在Visual Studio 2017中构建了一个angular应用程序。我正在使用npm、gulp和browserify来帮助我管理依赖项、捆绑和缩减。在我尝试引入moment、moment-timezone和angular-moment之前,一切都进行得很顺利,当我开始遇到让这些库发挥良好的问题时。

我假设这个问题与这些库被包含在我的应用程序中的方式有关,因为我使用npm、gulp、browserify或require('...')的方式出现了一些错误或bug。语句。所以,这似乎对我解释我是如何做到这一点是有帮助的。

首先,在VS中,我在项目(package.json)中添加了一个节点配置文件,其中包含将通过npm安装的所有依赖项的列表。例如,我的package.json看起来像这样:

代码语言:javascript
复制
{
"property": value,
"otherProperty": otherValue,
"dependencies": {
    "angular": "1.5.8",
    "angular-ui-router": "1.0.3",
    "jquery": "3.1.0",
    "moment": "2.18.1",     
    "moment-timezone": "0.5.13",
    "angular-moment": "1.0.1"
    }
}

现在,npm继续下载所有内容,并将其放在我的node_modules文件夹中,但它实际上并没有在我的应用程序中包含任何内容。因此,有一个类似于下面的吞咽任务:

代码语言:javascript
复制
var dependencies = Object.keys(packageJson && packageJson.dependencies || {});
browserify({cache: {}, packageCache: {} }})
    .require(dependencies)
    .bundle()
    .pipe(source(js/siteLibs.js))
    .pipe(buffer())
    .pipe(gulp.dest("."));

好的,如果gulp任务工作正常,我将有一个名为siteLibs.js的文件,其中包含来自我的npm依赖项的所有js,然后我可以只创建一个脚本标记来引用siteLibs.js。

下一部分,我有点模糊,但我仍然必须有一个实际的要求(‘...’)在我的应用程序中,针对moment、angular-moment和moment-timezone的语句?如果需要,为什么?它在做什么?

现在,在这一点上,我应该能够继续前进,让我的angular应用程序依赖于moment、moment-timezone或angular-moment,而且我确实可以。问题是,当我调用moment.locales()时,它应该返回所有已加载语言环境的列表,它除了'en-US‘之外什么都没有。好吧,这是意料之中的,因为我从来没有加载过任何语言环境。因此,如果我进入我的应用程序,并说:

代码语言:javascript
复制
require('moment/locales/en-gb');
require('moment/locales/en-au');
require('moment/locales/fr-ca');

没有关系。唯一加载的区域设置是en-US。考虑到我使用的是npm、gulp和browserify,那么加载这些额外的语言环境的正确方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2017-08-09 04:31:28

在moment的文档中参考这一点

https://momentjs.com/docs/#/use-it/browserify/

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

https://stackoverflow.com/questions/45577348

复制
相关文章

相似问题

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