2017-03-04 64 views
0

我有这个Angular Node应用程序,并且正在尝试获取Jasmine和Karma的设置过程。执行Karma和Jasmine测试时收到'未捕获的SyntaxError:意外的令牌导入'

然而,当我尝试运行一个简单的测试,我在规格/ boxService.spec.js收到此错误

Uncaught SyntaxError: Unexpected token import 

:2

boxService.spec.js

import { BoxService } from './services/boxService.js'; 

describe("BoxService", function() { 
    var service; 
    beforeEach(function(){ 
    service = new BoxService 
    }); 

    describe('getAllItemsInRootFolder', function() { 
    it('returns an object representing all the files in Box', function() { 
     let callBack = function(err, data) { 
     if(err) throw err; 
     expect(data).toNotBe(null) 
     } 
     service.getAllItemsInRootFolder(callBack) 
    }); 
    }); 

boxService.js

export class BoxService{ 

    var developerToken = 'IdSqAIHSUCkD7J67hVsVR1FjWtkrODre' 

    getAllItemsInRootFolder(callBack){ 
    client.folders.getItems('0', { 
      fields: 'name,modified_at,size,url,permissions,sync_state', 
      offset: 0, 
      limit: 25 }, callBack 
    ); 
    } 

我在挠我的脑子为什么!请帮助

+2

导入ES6的一部分。您是否使用了转译器或者接受Es6并提供了Es5代码的东西? –

回答

0

通过添加Babel作为预处理器来修复它!

的package.json

"dependencies": { 
    "babel-preset-es2015": "^6.22.0", 
    "babel-preset-react": "^6.23.0", 
    "babel-register": "^6.23.0", 
    "box-node-sdk": "^1.3.0", 
    "ejs": "2.4.1", 
    "express": "4.13.3" 
    }, 

.babelrc

{ 
    "presets": ["es2015"] 
} 
相关问题