React 安装正确,其他一切正常,除了当我尝试在终端中运行“npm start”时,它给了我以下错误。

这是我的 package.json 代码:
{
"name": "r3-ui",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.11.6",
"@testing-library/react": "^11.2.2",
"@testing-library/user-event": "^12.2.2",
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-scripts": "4.0.1",
"web-vitals": "^0.2.4"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
} …Run Code Online (Sandbox Code Playgroud) 这是我的文件夹结构。我已经通过世博会启动了这个应用程序。不知何故,由于以下错误,我无法运行它。

根栈.js
import React from 'react';
import { createSwitchNavigator } from 'react-navigation';
import { createStackNavigator } from 'react-navigation-stack';
import LoginComponent from "../component/login/login";
import HomeComponent from "../component/home/home"
const AuthNav = createStackNavigator({
Login:{
screen : LoginComponent,
navigationOptions:{
headerShown: false
}
},
});
const AppNav = createStackNavigator({
Home:{
screen : HomeComponent,
tabBarLabel: 'Home',
navigationOptions:{
headerShown: false
}
},
});
const switchNav = createSwitchNavigator({
AuthNav,
AppNav
},{
initialRouteName:"AuthNav"
});
export default switchNav;
Run Code Online (Sandbox Code Playgroud)
stack 文件夹内的 App.js
import { createAppContainer } from 'react-navigation'
import App from …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个被分成多个部分的组件。
例如,在下面的示例代码中,我的目标是在维护状态的同时将表单和操作分开。这样,我可以创建一个基本的表单+操作按钮组件,然后在不同的页面上设置不同的样式。
import { useState } from 'react'
const FormBasic = ({ children }) => {
const [ text, setText ] = useState('')
const onSubmit = () => console.log("Submitting");
const onChange = (e) => {
console.log("Typing", e.target.value);
setText(e.target.value)
}
const Form = () => <textarea rows={4} onChange={onChange} value={text} />;
const Actions = () => <button onClick={onSubmit}>Some Buttons</button>;
return children({ Form, Actions });
};
export default FormBasic;
Run Code Online (Sandbox Code Playgroud)
然后我将以这种方式使用它(如下)。问题是 - 对于静态组件来说,一切都渲染得很好,但是一旦状态发生变化,您就会开始看到问题。
例如,当我输入<textarea />并onChanged被触发时,该函数会重新呈现,并且您会失去文本区域的焦点。所以最终你无法真正在文本区域中输入内容。
export default function …Run Code Online (Sandbox Code Playgroud) 我通常使用以下语句进行pdo MySQL查询
$query = $db->prepare('MySQL statement');
$result = $query->execute(array())
Then use $query->fetch or fetchcolumn (to check Count(*)) to fetch data.
Run Code Online (Sandbox Code Playgroud)
我的问题是 - 是否需要测试$ result是否真实?在生产环境中,如果MySQL已关闭,则在我们声明新PDO时将存在错误.
在什么情况下我需要测试执行是真还是假?
嗨,我坚持这个非常奇怪的情况.
我是一个mysql服务器和一个应用服务器.应用程序通过专用网络连接到mysql,我授予.两个用户的权限.
这是来自app server的代码.
$db2 = new PDO('mysql:host=' . $host . ';dbname=' .$database. ';charset=utf8mb4', $userid, $db_password);
$db2->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db2->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$somequery = $db2->query('SELECT mail,message_id from mc_mails');
$somequery->execute();
$somedata = $somequery->fetchAll(\PDO::FETCH_ASSOC);
pretty_print($somedata); //my own <pre>print_r()</pre> function
var_dump($somedata); //shows raw dump
//so below i try to do again in a try loop to get Exception, and there's no exception.
try {
$somequery->execute();
while ($row = $somequery->fetch(PDO::FETCH_ORI_NEXT)) {
pretty_print($row);
}
} catch (PDOException $e) {
echo $e->getMessage();
}
Run Code Online (Sandbox Code Playgroud)
以上结果给出了以下结果
**This is …Run Code Online (Sandbox Code Playgroud) 我的聊天应用程序需要一个状态,我可以在其中跟踪对象
messages.roomId.messageId.payload
其中有效负载将包含消息对象的主体。
目前每当我的新消息进来时,我都有以下减速器
case 'NEW_MESSAGE':
return {
...state,
messages: {
...state.messages,
[action.roomId]: { //Missing something here.
[action.id]:
action.payload
}
}
};
Run Code Online (Sandbox Code Playgroud)
所以我意识到房间 ID 内总是只有一条消息,因为我没有使用 ... 来保持以前的状态..
所以我尝试了以下方法。
case 'NEW_MESSAGE':
return {
...state,
messages: {
...state.messages,
[action.roomId]: {
...state.messages.[action.roomId], [action.id]: //Giving me error here.
action.payload
}
}
};
Run Code Online (Sandbox Code Playgroud)
出来的错误是
..state.messages.[action.roomId], [action.id]: action.payload
它不接受.[action.roomId]
我应该如何将动态键放在那里以便我的减速器工作?
reactjs ×3
mysql ×2
php ×2
react-native ×2
expo ×1
npm-start ×1
pdo ×1
react-redux ×1
redux ×1