亲爱的Strongloop社区
我正在遵循由环回提供的用于评估本地存储数据存储的示例。
它工作正常,我可以使用其余的API从本地文件系统(用作数据源)创建和检索文件。
我不得不使用“$ npm install loopback-component-storage --save”。

datasource.json中定义的数据源为:

{
  "db": {
    "name": "db",
    "connector": "memory"
  },
  "localFileSystemStorage": {
    "name": "localFileSystemStorage",
    "connector": "loopback-component-storage",
    "provider": "filesystem",
    "root": "./property_data"
  }
}
./property_data目录是所有数据的存储位置。 (相对于项目目录),我可以无休止地访问它。

接下来,我试图生成Angular服务组件,以便可以使用Angular应用程序连接到回送服务器。因此,在客户端目录中,我执行了:
../example-2.0/client$  lb-ng  ../server/server.js js/lb-services.js

,但失败:
/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-component-storage/lib/providers/filesystem/index.js:25
    throw new Error('FileSystemProvider: Path does not exist: ' + this.root);
          ^
Error: FileSystemProvider: Path does not exist: ./server/storage
    at new FileSystemProvider (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-component-storage/lib/providers/filesystem/index.js:25:11)
    at Object.module.exports.createClient (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-component-storage/lib/providers/filesystem/index.js:17:10)
    at Object.createClient (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-component-storage/lib/factory.js:86:18)
    at new StorageService (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-component-storage/lib/storage-service.js:29:25)
    at Object.exports.initialize (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-component-storage/lib/storage-connector.js:12:19)
    at DataSource.setup (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-datasource-juggler/lib/datasource.js:332:17)
    at new DataSource (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback-datasource-juggler/lib/datasource.js:109:8)
    at Registry.createDataSource (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback/lib/registry.js:349:12)
    at dataSourcesFromConfig (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback/lib/application.js:415:19)
    at EventEmitter.app.dataSource (/home/eval/projects/loopback-component-storage/example-2.0/node_modules/loopback/lib/application.js:222:12)

我缺少什么吗?
我真的可以在这里使用一些帮助。

谢谢

最佳答案

datasource.json文件中,您提供了相对于./property_data文件夹的相对路径/server

因此,您只需要从该文件夹调用任何方法。

现在,当您通过服务器运行它时,您是从/server文件夹运行的,这就是为什么它运行没有问题,但是对于有 Angular 的Sdk生成,您是从client/文件夹运行的。因此产生了Path does not exist错误。

因此正确的语法将是:

 ../example-2.0/server$  lb-ng  server.js ../client/js/lb-services.js

10-04 20:18