cordova - Ionic 2 - 'import' og 'export' kan bare forekomme med 'sourceType: module'
Jobber på et nytt prosjekt med en helt fersk installasjon av ionic2, etter å ha installert angular2-jwt får jeg denne feilen:
ParseError: 'import' and 'export' may appear only with 'sourceType: module'
D:\desenv\arquivos\workspace_inbit\medipop-parent\medipop-app\node_modules\angular2-jwt\angular2-jwt.ts:1
import {Injectable, Injector} from 'angular2/core';
Å gjenskape:
ionic start testapp --v2 --ts
cd testapp
npm i --save angular2-jwt
og app-siden:
@App({
templateUrl: 'build/app.html',
providers: [
provide(AuthHttp, {
useFactory: (http) => {
return new AuthHttp(new AuthConfig({
headerPrefix: '',
noJwtError: true
}), http);
},
deps: [Http]
})
]
})
class MyApp {}
Har noen en anelse om hvordan man kan løse dette lille puslespillet?
Svar #1
Prøv å legge til denne linjen i din ts-konfigurasjon:
"parserOptions": {
"ecmaVersion": 6,
"sourceType": "module"
},
Hvis dette ikke fungerer, prøv med denne konfigurasjonen som fungerer på min datamaskin (tsconfig.json):
{
"compilerOptions": {
"noImplicitAny": true,
"module": "commonjs",
"target": "ES5",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"declaration": true,
"moduleResolution":"node"
},
"files": [
"angular2-jwt.ts",
"typings/browser.d.ts",
"custom.d.ts"
]
}
Svar #2
'import' og 'export' kan bare vises med 'sourceType: module'
Du må spesifisere en module i din tsconfig eller på kommandolinjen. f.eks.
'module': 'commonjs'
Mer
https://basarat.gitbooks.io/typescript/content/docs/project/modules.html
