我有一个现有的RoR应用,它使用angular 1.4.9。我想尝试ES-6的特性,我想使用ES6中的类来构建新的特性。是否可以使用定义新的类,这些类可以在现有的angular应用程序中使用,反之亦然。我知道您可以使用转译器(如babel)并将js添加到rails资产管道中。我的问题是如何在es6类和现有的angular应用程序代码之间导出/导入模块。
发布于 2016-07-20 08:17:21
一种方法是将纯ES6类/模块放在单独的文件中,例如。
class UserService {
// all your beautiful ES6 class stuff goes here ...
}
export {UserService};
并在一个单独的文件中导入这些和,并将它们插入angular 1。*
import 'angular';
import {UserService} from './user-service';
angular.module('myApp', [])
.service('userService', UserService);
这有助于将新的基于ES6的业务逻辑与angular 1.*代码分开,这有助于轻松升级到angular 2。*
不过,下一步是设置一个构建过程,该过程不仅可以处理ES6的转换,还可以处理ES6模块的导入/导出。我们发现jspm (http://jspm.io/)是一个很好的选择。这里有此方法的入门指南http://legacytotheedge.blogspot.co.nz/2015/01/using-es6-with-your-angularjs-project.html
https://stackoverflow.com/questions/38470173
复制相似问题