好吧,我正在拼命尝试安装一个具有正常功能的ListView组件的react-native-web分支。 This branch,具体而言。
我将它安装到项目目录中,如下所示:npm install --save react@0.14 react-dom@0.14 https://github.com/IjzerenHein/react-native-web/tarball/feaure-listview2
直接从react-native-web
安装似乎没有这个问题。
这就是index.web.js的样子:
import React from 'react'
import {
AppRegistry,
Component,
...
} from 'react-native';
class App extends Component {
...
}
// App registration and rendering
AppRegistry.registerComponent('App', () => App);
AppRegistry.runApplication('App', { rootTag: document.getElementById('react-root') });
这是控制台告诉我的内容(部分内容,文字太多了!):
[Error] ./index.web.js
Module not found: Error: Cannot resolve module 'react-native-web' in /Users/michael/Code/spectrum-react-native
resolve module react-native-web in /Users/michael/Code/spectrum-react-native
looking for modules in /Users/michael/Code/spectrum-react-native/node_modules
resolve 'file' react-native-web in /Users/michael/Code/spectrum-react-native/node_modules
resolve file
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web is not a file
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.webpack.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.web.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.json doesn't exist
resolve 'file' or 'directory' /Users/michael/Code/spectrum-react-native/node_modules/react-native-web
resolve file
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web is not a file
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.webpack.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.web.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web.json doesn't exist
resolve directory
directory default file index
resolve file index in /Users/michael/Code/spectrum-react-native/node_modules/react-native-web
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/index doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/index.webpack.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/index.web.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/index.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/index.json doesn't exist
use dist/index.js from package.json
resolve 'file' or 'directory' dist/index.js in /Users/michael/Code/spectrum-react-native/node_modules/react-native-web
resolve file
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/dist/index.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/dist/index.js.webpack.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/dist/index.js.web.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/dist/index.js.js doesn't exist
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/dist/index.js.json doesn't exist
resolve directory
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/dist/index.js doesn't exist (directory default file)
/Users/michael/Code/spectrum-react-native/node_modules/react-native-web/dist/index.js/package.json doesn't exist (directory description file)
...
@ ./index.web.js 9:19-42
errors (bundle.js:7934)
onmessage (bundle.js:7969)
dispatchEvent (bundle.js:2874)
(anonymous function) (bundle.js:4908)
forEach
_transportMessage (bundle.js:4906)
(anonymous function)
emit (bundle.js:847)
onmessage (bundle.js:6261)
答案 0 :(得分:4)
问题是,他们有一个构建过程。这样就可以在git中忽略使用/预期的文件,但是在npm导出中。
克服这个问题的最简单方法是克隆存储库,检查给定的分支,运行构建,并根据您是否有大型团队使用npm link
链接本地存储库或删除{{1从dist/
开始,将构建文件推送到分支。