San*_*eri 14 javascript node.js angularjs ecmascript-6
我正在使用角度js和nodejs以及ES6.我想在angular js代码中导入moment.js.我做到了'npm install moment --save'
现在我能够看到在节点模块内的moment文件夹中的moment.js文件.
在我的app.js文件中,我有这样的意思
'import moment from 'moment';
Run Code Online (Sandbox Code Playgroud)
但是如果搜索具有日期范围的东西它在控制台中显示错误.任何人都可以帮我怎么做..?
cmd*_*cmd 12
目前,要使用ES6模块语法,您需要使用转换器,例如Babel,因为node.js和大多数浏览器还不支持ES6模块语法.
Babel和webpack非常适合这一点.这是一个很好的例子:
正确配置后,您可以调用以下内容:
import moment from 'moment';
console.log(moment.now());
Run Code Online (Sandbox Code Playgroud)
由于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
Run Code Online (Sandbox Code Playgroud)
但是,目前看来,没有办法只导入函数的子集,而必须导入整个东西。
请改用此库: https: //github.com/urish/angular-moment
加载js文件:
<script src="components/moment/moment.js"></script>
<script src="components/angular-moment/angular-moment.js"></script>
Run Code Online (Sandbox Code Playgroud)
在您的应用程序控制器中注入时刻依赖性:
var myapp = angular.module('myapp', ['angularMoment']);
Run Code Online (Sandbox Code Playgroud)