NodeJS 如何在ES6中使用npm导入moment.js?

ukdjmx9f  于 2022-11-03  发布在  Node.js
关注(0)|答案(9)|浏览(101)

我在ES6沿着使用angular js和nodejs。我想导入angular js代码中的moment.js。我使用了'npm install moment --save'
现在,我可以在节点模块内的moment文件夹中看到moment.js文件。
在我的app.js文件中,我这样写

'import moment from 'moment';

但如果搜索的东西与日期范围它是显示在控制台错误。有人能帮助我如何做到这一点...?

hs1ihplo

hs1ihplo1#

目前,要使用ES6模块语法,您需要使用一个transpiler,例如Babel,因为node.js和大多数浏览器还不支持ES6模块语法。
Babel和Webpack非常适合这一点。Here是一个很好的例子:
一旦正确配置了它,就可以这样调用moment:

import moment from 'moment';
console.log(moment.now());
gijlo24d

gijlo24d2#

自版本2.10.0起时刻在ES6中编写:

import moment from './node_modules/moment/src/moment';
// Note the 'src/' to import the ES6 version and not the CJS build

然而现在似乎没有办法只导入函数的一个子集,你必须导入整个函数。

4ktjp1zp

4ktjp1zp3#

对我有效的选项是:

import * as moment from 'moment';
1dkrff03

1dkrff034#

这就是你要找的东西。

import moment from 'moment'
import it from 'moment/locale/it'
import { utc } from 'moment'
moment.locale('it')

您可以在此处阅读相关问题。https://github.com/moment/moment/issues/2608

cwtwac6a

cwtwac6a5#

你写的代码不起作用。

//wont work
'import moment from moment'; this is wrong.
//this will work
import moment from 'moment';
or
import 'moment';

如果这些不起作用。然后尝试使用web-pack来向全球公开时刻。

o7jaxewo

o7jaxewo6#

请改用此库:https://github.com/urish/angular-moment
加载js文件:

<script src="components/moment/moment.js"></script>
<script src="components/angular-moment/angular-moment.js"></script>

在应用控制器中注入时刻依赖关系:

var myapp = angular.module('myapp', ['angularMoment']);
4uqofj5v

4uqofj5v7#

const moment = require('moment')

这对我很有效

unguejic

unguejic8#

在这里,这是可行的:

import moment from 'moment';
window.moment = moment;
e1xvtsh3

e1xvtsh39#

也可以

const moment = require("moment")

相关问题