前の投稿on another questionが削除されていたので、(その文脈で)問題を提示するのはかなり明白でしたが、私は再び独立した質問としてやり直します。AWS CognitoをAurelia Frameworkにバンドルする方法
私はAmazon Cognitoをaurelia.json
にバンドルしようとしています。私はmentioned articleのjsachsとNathanによって提供された回答で、私が細くすることのできるものすべてを追ってきましたが、何かが不完全だと思います。
{
"name": "account-components-bundle.js",
"source": {
"include": [
"**/components/account/**/*.js",
"**/components/account/**/*.{html,css}"
]
},
"dependencies": [
{
"name": "aws-sdk",
"path": "../node_modules/aws-sdk/dist",
"main": "aws-sdk.min",
"exports": "AWS"
}
],
"prepend": [
"node_modules/aws-sdk/dist/aws-sdk.min.js",
"node_modules/amazon-cognito-identity-js/dist/aws-cognito-sdk.min.js",
"node_modules/amazon-cognito-identity-js/dist/amazon-cognito-identity.min.js",
"node_modules/bluebird/js/browser/bluebird.core.js",
"node_modules/requirejs/require.js"
]
},
あなただけの先頭に追加ディレクティブを追加した場合、au build
は、しかし、私はCognitoクラスを呼び出す方法はありません、エラーがスローされません。
Unhandled rejection Error: Script error for "aws-sdk/global", needed by: components/account/login
http://requirejs.org/docs/errors.html#scripterror
at makeError (https://white.dev/dist/aurelia-bundle.js:4419:17)
at HTMLScriptElement.onScriptError (https://white.dev/dist/aurelia-bundle.js:5989:36)
From previous event:
at DefaultLoader.loadModule (https://white.dev/dist/aurelia-bundle.js:14914:14)
at ViewEngine.importViewModelResource (https://white.dev/dist/aurelia-bundle.js:23006:26)
at CompositionEngine.ensureViewModel (https://white.dev/dist/aurelia-bundle.js:24276:32)
at CompositionEngine.createController (https://white.dev/dist/aurelia-bundle.js:24252:19)
at CompositionEngine._createControllerAndSwap (https://white.dev/dist/aurelia-bundle.js:24227:19)
at CompositionEngine.compose (https://white.dev/dist/aurelia-bundle.js:24313:21)
at processInstruction (https://white.dev/dist/aurelia-bundle.js:24798:32)
at Compose.bind (https://white.dev/dist/aurelia-bundle.js:24689:7)
at Controller.bind (https://white.dev/dist/aurelia-bundle.js:23196:24)
at View.bind (https://white.dev/dist/aurelia-bundle.js:21200:24)
at If._runValueChanged (https://white.dev/dist/aurelia-bundle.js:24887:19)
at If.valueChanged (https://white.dev/dist/aurelia-bundle.js:24842:31)
at If.bind (https://white.dev/dist/aurelia-bundle.js:24831:12)
From previous event:
at CompositionEngine._createControllerAndSwap (https://white.dev/dist/aurelia-bundle.js:24227:45)
at CompositionEngine.compose (https://white.dev/dist/aurelia-bundle.js:24313:21)
at TemplatingEngine.compose (https://white.dev/dist/aurelia-bundle.js:24576:38)
at Aurelia.setRoot (https://white.dev/dist/aurelia-bundle.js:13886:21)
at Object._callee$ (https://white.dev/dist/app-bundle.js:86:37)
at tryCatch (https://white.dev/dist/aurelia-bundle.js:3:27199)
at Generator.invoke [as _invoke] (https://white.dev/dist/aurelia-bundle.js:3:28901)
at Generator.t.(anonymous function) [as next] (https://white.dev/dist/aurelia-bundle.js:3:27447)
at step (https://white.dev/dist/app-bundle.js:25:44)
at https://white.dev/dist/app-bundle.js:36:29
From previous event:
at step (https://white.dev/dist/app-bundle.js:35:55)
at https://white.dev/dist/app-bundle.js:43:24
From previous event:
at Object.<anonymous> (https://white.dev/dist/app-bundle.js:22:20)
at Object.configure (https://white.dev/dist/app-bundle.js:97:25)
at https://white.dev/dist/aurelia-bundle.js:12465:29
From previous event:
at config (https://white.dev/dist/aurelia-bundle.js:12460:56)
at https://white.dev/dist/aurelia-bundle.js:12496:14
From previous event:
at bootstrap (https://white.dev/dist/aurelia-bundle.js:12495:26)
at https://white.dev/dist/aurelia-bundle.js:12482:9
at <anonymous>
From previous event:
at run (https://white.dev/dist/aurelia-bundle.js:12477:61)
at Object.<anonymous> (https://white.dev/dist/aurelia-bundle.js:12502:37)
at Object.execCb (https://white.dev/dist/aurelia-bundle.js:5947:33)
at Module.check (https://white.dev/dist/aurelia-bundle.js:5134:51)
at Module.enable (https://white.dev/dist/aurelia-bundle.js:5427:22)
at Object.enable (https://white.dev/dist/aurelia-bundle.js:5808:39)
at Module.<anonymous> (https://white.dev/dist/aurelia-bundle.js:5412:33)
at https://white.dev/dist/aurelia-bundle.js:4385:23
at each (https://white.dev/dist/aurelia-bundle.js:4310:31)
at Module.enable (https://white.dev/dist/aurelia-bundle.js:5364:17)
at Module.init (https://white.dev/dist/aurelia-bundle.js:5039:26)
at https://white.dev/dist/aurelia-bundle.js:5711:36
:
あなたは(私は私たち自身のコード内ではまだ何も呼び出しておりませんのでご注意下さい)次のエラーを取得しますが、ページの読み込み時に、上記最終的にパッケージをバンドルするフォームで依存関係のディレクティブを追加します
私がさらに進んで依存関係を拡張しようとすると(既にコンパイルされたライブラリを使用していない)、previous postに記載されているのと同じ古い問題が発生します。 au build
を実行するときに
"dependencies": [
{
"name": "lodash",
"path": "../node_modules/lodash",
"main": "index"
},
{
"name": "xmlbuilder",
"path": "../node_modules/xmlbuilder",
"main": "lib/index"
},
{
"name": "aws-sdk",
"path": "../node_modules/aws-sdk",
"main": "lib/aws",
"exports": "AWS"
}
],
この依存関係、
File not found or not accessible: /path/to/project/node_modules/aws-sdk/lib/region_config_data.json.js. Requested by /path/to/project/node_modules/aws-sdk/lib/aws.js
{ Error: ENOENT: no such file or directory, open '/path/to/project/node_modules/aws-sdk/lib/region_config_data.json.js'
at Object.fs.openSync (fs.js:584:18)
at Object.fs.readFileSync (fs.js:491:33)
at Object.exports.readFileSync (/path/to/project/node_modules/aurelia-cli/lib/file-system.js:74:13)
at fileRead (/path/to/project/node_modules/aurelia-cli/lib/build/bundled-source.js:101:27)
at Object.context.fileRead (/path/to/project/node_modules/aurelia-cli/lib/build/amodro-trace/lib/loader/Loader.js:179:18)
at Object.context.load (/path/to/project/node_modules/aurelia-cli/lib/build/amodro-trace/lib/loader/Loader.js:370:32)
at Module.load (eval at <anonymous> (/path/to/project/node_modules/aurelia-cli/lib/build/amodro-trace/lib/loader/Loader.js:14:1), <anonymous>:832:29)
at Module.fetch (eval at <anonymous> (/path/to/project/node_modules/aurelia-cli/lib/build/amodro-trace/lib/loader/Loader.js:14:1), <anonymous>:822:66)
at Module.check (eval at <anonymous> (/path/to/project/node_modules/aurelia-cli/lib/build/amodro-trace/lib/loader/Loader.js:14:1), <anonymous>:854:30)
at Module.enable (eval at <anonymous> (/path/to/project/node_modules/aurelia-cli/lib/build/amodro-trace/lib/loader/Loader.js:14:1), <anonymous>:1173:22)
errno: -2,
code: 'ENOENT',
syscall: 'open',
につながると私は、これはnodejs require()
と比較してrequirejs
がロードJSONファイルをサポートしていない可能性があるという事実によって引き起こされ、それが常にファイルを見込んだと思いますjs
です。
私のデバッグクエストのこの時点で私はちょっと固まっています。どのようにこれを達成することができるでしょうか?私は非常に感謝されます。
これまでの質問を回避するために、複数のフォーム(dist
とlib
の両方のファイル)でバンドルの依存関係「amazon-cognito-identity-js」を追加しようとしました。結果は上記と同じです。私はjson.js
エラーで立ち往生します。
編集1
私は、すべてのaurelia.json
について次のような形式でコンパイルエラーをきれいにするために管理しかし、クラスが適切にロードされていません。
"bundles": [
{
"name": "app-bundle.js",
"source": {
"include": [
"**/src/main.js",
"**/src/app.js",
"**/src/environment.js",
"**/src/app.{html,css}"
]
}
},
...
{
"name": "vendor-bundle.js",
"dependencies": [
...
{
"name": "lodash",
"path": "../node_modules/lodash",
"main": "index"
},
{
"name": "xmlbuilder",
"path": "../node_modules/xmlbuilder",
"main": "lib/index"
},
{
"name": "aws-sdk",
"path": "../node_modules/aws-sdk",
"main": "dist/aws-sdk",
"exports": "AWS"
}
],
"append": [
"node_modules/amazon-cognito-identity-js/dist/aws-cognito-sdk.min.js",
"node_modules/amazon-cognito-identity-js/dist/amazon-cognito-identity.min.js"
]
},
...
]
そのデポに含める必要があるファイルのリストにjsonファイルを追加しようとしましたか? –
@AshleyGrant以下の '{" name ":" aws-sdk "、" path ":" ../node_modules/aws-sdk "、" main ":" lib/aws "、" exports ":" AWS "、" resources ":[" lib/region_config_data.json "]}'。結果は同じです。 –