0

私はこのプロジェクトを取得しようとしています: https ://github.com/stormpath/stormpath-angular2-express-example webpackで実行されています。アプリケーションは起動しますが、最初のページが読み込まれると、次のエラーが発生します。

TypeError: Cannot read property 'getCookie' of null
at CookieXSRFStrategy.configureRequest (app.js:51374)
at XHRBackend.createConnection (app.js:51414)
at httpRequest (app.js:51752)
at StormpathHttp.Http.get (app.js:51863)
at StormpathHttp.get (app.js:78381)
at Stormpath.getAccount (app.js:49917)
at new Stormpath (app.js:49906)
at _View_AppComponent_Host0.createInternal (host.ngfactory.js:20)
at _View_AppComponent_Host0.AppView.create (app.js:42393)
at _View_AppComponent_Host0.DebugAppView.create (app.js:42593)

ここにサンプル リポジトリのセットアップがあります: https://github.com/djkrite/ng2-stormpath-webpack-example

私は使用しようとしました:

BrowserDomAdapter.makeCurrent();

ブートストラップ呼び出しの前ですが、予期しないトークンのインポートに関する別のエラーがスローされます。

どんな助けでも大歓迎です。

4

1 に答える 1

1

朗報です!ng2-stormpath-webpack-example を機能させる方法を見つけました。問題の根本的な原因は、typescript の構成 ( tsconfig.json) が src ディレクトリにあり、webpack がルート ディレクトリにあると想定していることだと思います。動作するtsconfig.jsonファイルは次のとおりです (ルート ディレクトリに移動したことを思い出してください)。

{
  "compilerOptions": {
    "declaration": false,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "lib": ["es6", "dom"],
    "mapRoot": "./",
    "module": "commonjs",
    "moduleResolution": "node",
    "outDir": "../dist/out-tsc",
    "sourceMap": true,
    "target": "es5",
    "types": [
      "jasmine",
      "node"
    ],
    "exclude": [
      "node_modules"
    ]
  }
}

webpack ローダーを次のwebpack.config.jsように変更しました。

module: {
    loaders: [
      {
        test: /\.ts$/,
        loaders: ['awesome-typescript-loader', 'angular2-template-loader?keepUrl=true'],
        exclude: [/\.(spec|e2e)\.ts$/, /node_modules/]
      },
      /* Embed files. */
      {
        test: /\.(html|css)$/,
        loader: 'raw-loader',
        exclude: /\.async\.(html|css)$/
      },
      /* Async loading. */
      {
        test: /\.async\.(html|css)$/,
        loaders: ['file?name=[name].[hash].[ext]', 'extract']
      }
    ]
  }

空の解決拡張機能も削除しました。

  resolve: {
    extensions: ['.js', '.ts']
  },

最後に、package.json分度器のタイプを追加し、Webpack 2.x にアップグレードしました。

  "devDependencies": {
    ...
    "@types/selenium-webdriver": "2.53.33",
    ...
    "webpack": "2.2.0-rc.1",
    "webpack-dev-server": "^1.16.2"
  }

修正を含むプル リクエストは次のとおりです: https://github.com/djkrite/ng2-stormpath-webpack-example/pull/1

于 2016-12-20T23:23:14.083 に答える