過去に作成したloopbackアプリの場合、slcコマンドでscafoldすると loopback-explorer
と呼ばれるloopbackで作成したAPIをCRUDするUIが含まれた形でアプリが作成されますが、今回この loopback-explorer
に大きな変更が加えられて単純に npm update するとアプリの起動が行えなくなるのでその際の対応方法のメモです。
loopback(2.22.0)以降だとslcコマンドでscafoldされた際に新しいAPI explorerに対応しているので問題はないので、既にアプリを作っている人向けの内容です。
package.jsonの修正
これまで利用されていた loopback-explorer
を削除。新しく同じ役割をするコンポーネントとして追加された loopback-component-explorer
を追加します。
$ npm install loopback-component-explorer --save $ npm uninstall loopback-explorer --save
修正後のpackage.jsonは以下の様な形になります。
"dependencies": { (snip) "loopback-component-passport": "^1.5.0", + "loopback-component-explorer": "^2.1.0", "loopback-connector-mongodb": "^1.13.0", (snip) }, - "optionalDependencies": { - "loopback-explorer": "^2.0.1" - },
component-config.json を追加
loopback-component-explorer をlooopbackアプリにマウントさせてやるために server/component-config.json
を新規に追加します。
explorer呼び出すパスをJSON内で記述します。
{ "loopback-component-explorer": { "mountPath": "/explorer" } }
以上の操作で http://localhost:5000/explorer/ へアクセスすることで従来通りのAPI Explorerを利用することができます。
参照
全く蛇足ですが、StrongloopのロゴにIBMのクレジットが入っていた。