所以我用react-native开发了一个应用程序,已经在Android上运行并经过测试,但是现在是ios部分。 我正在MacOS上使用React作为软件包管理器使用React Native版本0.60.3。
我正在运行“ react-native start --reset cache”。 然后在另一个控制台上运行“ react-native run-ios:”, 并得到这个错误: ” 错误无法构建iOS项目。我们运行了“ xcodebuild”命令,但它退出并显示错误代码65。要进一步调试构建日志,请考虑通过打开app.xcworkspace使用Xcode.app构建您的应用程序。 .... 错误:无法解析构建文件:XCBCore.BuildFile(missingTargetProductReference(...)) “
因此,然后我尝试使用Xcode运行,并且在“ react-native start --reset-cache”控制台上收到此错误:
”
错误:无法从./index
解析模块/Users/nono/work/myapp/.
:从./index
找不到模块/Users/nono/work/myapp/.
。实际上,这些文件都不存在:
* /Users/nono/work/app/index(.native||.ios.js|.native.js|.js|.ios.json|.native.json|.json|.ios.ts|.native.ts|.ts|.ios.tsx|.native.tsx|.tsx)
”
和iphone模拟器上的this错误:
我很拼命...请帮助!
更新:
现在不会发生第一个错误。
我只收到“无法解析'./index'...”
错误
答案 0 :(得分:1)
尝试在终端上运行以下命令:
public List < Dictionary < string,object >> DataTableToDictionaryList(DataTable table) {
List < Dictionary < string,
object >> parentRow = new List < Dictionary < string,
object >> ();
Dictionary < string,
object > childRow;
foreach(DataRow row in table.Rows) {
childRow = new Dictionary < string,
object > ();
foreach(DataColumn col in table.Columns) {
childRow.Add(col.ColumnName, row[col]);
}
parentRow.Add(childRow);
}
return (parentRow);
}
List < Dictionary < string,object >> RunDynamicQuery(string sql, Dictionary < string, Object > parameters = null, int resultSet = 0, CommandType commandType = CommandType.Text) {
// creates resulting dataset
var resultDataSet = new DataSet();
// creates a data access context (DbContext descendant)
using(var context = new DataDbContext()) {
// creates a Command
var conn = context.Database.Connection;
var cmd = conn.CreateCommand();
cmd.CommandType = commandType;
cmd.CommandText = sql;
if (parameters != null) {
// adds all parameters
foreach(var pr in parameters) {
var p = cmd.CreateParameter();
p.ParameterName = pr.Key;
p.Value = pr.Value;
cmd.Parameters.Add(p);
}
}
try {
// executes
if (conn.State != ConnectionState.Open) {
conn.Open();
}
var reader = cmd.ExecuteReader();
// loop through all resultsets (considering that it's possible to have more than one)
int currentResultSet = -1;
do {
currentResultSet++;
//skip lower resultsets
if (resultSet > currentResultSet) {
continue;
}
// loads the DataTable (schema will be fetch automatically)
var tb = new DataTable();
tb.Load(reader);
resultDataSet.Tables.Add(tb);
//make sure to get only one result set
break;
} while (! reader . IsClosed );
}
finally {
// closes the connection
context.Database.Connection.Close();
}
}
return DataTableToDictionaryList(resultDataSet.Tables[0]);
}
答案 1 :(得分:0)
尝试一下:
停止MetroBundler / launchPackager
Delete node_modules
rm -rf node_modules
更改package.json上的版本 来自
"react-native": "0.59.1",
至
"react-native": "0.58.6",
然后清洁看守人
watchman watch-del-all
再次运行npm install:
npm install
在我的情况下,请尝试运行您的项目:
react-native run-ios
答案 2 :(得分:0)
我的坏。我不小心删除了index.js ..