Приложение React-native внутри пакета lerna - PullRequest
0 голосов
/ 02 июня 2018

Я пытаюсь создать новое собственное приложение реагирования в структуре пакета lerna, но получаю следующую ошибку:

$ react-native init app
This will walk you through creating a new React Native project in /Volumes/DADOS/dev/workspace/amplifactory/packages/app
Using yarn v1.6.0
Installing react-native...
yarn add v1.6.0
(node:3689) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
[1/4] ?  Resolving packages...
[2/4] ?  Fetching packages...
[3/4] ?  Linking dependencies...
warning "workspace-aggregator-8ea62db7-5bb7-4a68-a0d4-fdec926563d9 > @monorepo/admin > babel-loader@7.1.4" has unmet peer dependency "babel-core@6".
warning "workspace-aggregator-8ea62db7-5bb7-4a68-a0d4-fdec926563d9 > @monorepo/admin > babel-preset-react-app@3.1.1" has unmet peer dependency "babel-runtime@^6.23.0".
warning "workspace-aggregator-8ea62db7-5bb7-4a68-a0d4-fdec926563d9 > @monorepo/admin > eslint-config-react-app@2.1.0" has incorrect peer dependency "babel-eslint@^7.2.3".
warning "workspace-aggregator-8ea62db7-5bb7-4a68-a0d4-fdec926563d9 > @monorepo/ux > react-datetime@2.14.0" has unmet peer dependency "moment@>=2.16.0".
warning "react-native > eslint-plugin-react-native@3.2.1" has unmet peer dependency "eslint@^3.17.0 || ^4.0.0".
warning " > react-native@0.55.4" has unmet peer dependency "react@16.3.1".
[4/4] ?  Building fresh packages...
success Saved 7 new dependencies.
info Direct dependencies
info All dependencies
├─ @monorepo/admin@3.0.0
├─ @monorepo/auth@3.0.0
├─ @monorepo/boffice@3.0.0
├─ @monorepo/graphqlserver@3.0.0
├─ @monorepo/studio@3.0.0
├─ app@0.0.1
└─ react-native@0.55.4
✨  Done in 8.38s.
internal/modules/cjs/loader.js:596
    throw err;
    ^

Error: Cannot find module '/Volumes/dev/workspace/amplifactory/packages/app/node_modules/react-native/package.json'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:594:15)
    at Function.Module._load (internal/modules/cjs/loader.js:520:25)
    at Module.require (internal/modules/cjs/loader.js:650:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at checkNodeVersion (/usr/local/lib/node_modules/react-native-cli/index.js:306:21)
    at run (/usr/local/lib/node_modules/react-native-cli/index.js:300:3)
    at createProject (/usr/local/lib/node_modules/react-native-cli/index.js:249:3)
    at init (/usr/local/lib/node_modules/react-native-cli/index.js:200:5)
    at Object.<anonymous> (/usr/local/lib/node_modules/react-native-cli/index.js:153:7)
    at Module._compile (internal/modules/cjs/loader.js:702:30)

Среда:

  • MacOSHigh Sierra
  • узел 10.3
  • lerna 2.11.0
  • пряжа 1.6.0

Поскольку я не могу создать его внутри пакета lernaЯ создал пакет приложения вне lerna, затем переместился в папку пакетов lerna и изменил файл package.json:

{
  "name": "@monorepo/app",
  "version": "3.0.0",
  "private": true,
  "scripts": {
    "start-dev": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest"
  },
  "dependencies": {
    "react": "16.3.1",
    "react-native": "0.55.4"
  },
  "devDependencies": {
    "babel-jest": "23.0.1",
    "babel-preset-react-native": "4.0.0",
    "jest": "23.1.0",
    "react-test-renderer": "16.3.1"
  },
  "jest": {
    "preset": "react-native"
  }
}

После изменения файла я переустановил его, используя lerna:

$ yarn install 

При попытке запустить приложение я получаю следующую ошибку:

enter image description here

Файл конфигурации моей lerna:

{
  "lerna": "2.9.0",
  "npmClient": "yarn",
  "useWorkspaces": true,
  "packages": [
    "packages/*"
  ],
  "version": "3.0.0"
}

Как я могу правильно добавить реактивный пакет в lerna и заставить его работать должным образом?

...