小编Ext*_*Sun的帖子

React Native - 异常“-[NSNull 长度]:发送到实例 0x1e6c059b0”的无法识别的选择器在调用 multiSet 时被抛出

我在应用程序加载后几秒钟收到此错误(但有时在几分钟或几次下载后并不总是如此)。我需要解决这个问题。
如果需要更多细节和/或编辑 - 请告诉我,我会制作它们。

异常“-[NSNull 长度]:发送到实例 0x1e6c059b0”的无法识别的选择器在使用参数调用目标 AsyncLocalStorage 上的 multiSet 时被抛出(((“@Ye-Music:songs”,“”)),483)

错误截图


带有 AsyncStorage 的功能:

allSongs = () => {
    console.log('hello function!');
    fetch(URL + "/SongsList", {
      body: null,  //// sending null because its a view from SQL db
      method: "POST",
      headers: {
        Accept: 'application/json',
        "Content-type": "application/json; charset=UTF-8"
      }
    })
      .then(res => { return res.json()})
      .then((songsResult) => {
        AsyncStorage.setItem("@Ye-Music:songs", songsResult.d);
      })
      .catch(err => {
        console.error(err);
      });
  };
Run Code Online (Sandbox Code Playgroud)


包.json

"dependencies": {
    "@expo/samples": "2.1.1",
    "expo": "29.0.0",
    "react": "16.3.1",
    "react-native": "https://github.com/expo/react-native/archive/sdk-29.0.0.tar.gz",
    "react-native-elements": "^0.19.1",
    "react-native-material-cards": "^1.0.9", …
Run Code Online (Sandbox Code Playgroud)

exception-handling exception react-native asyncstorage

5
推荐指数
1
解决办法
1580
查看次数

ReactJS -如何使用 React Router 创建具有单路径的多步骤组件/表单

我想在用户输入请求的信息后在组件之间切换。
将按此顺序向用户显示的组件:

  1. {MobileNum } 输入手机号码
  2. {IdNumber } 身份证号码
  3. {CreatePassword } 创建密码

当所有这些步骤完成后,浏览器将切换到主页。用户必须无法在页面之间移动,直到他填写了每个组件中的每个请求。

现在我想要一种更好的路由器方式,就好像我里面有 3-4 个组件Login,并且必须在安全的乳清中,而且用户不能通过 URL 手动切换组件。

import React, { Component } from 'react';
import {
  BrowserRouter as Router,
  Redirect,
  Route,
  Switch,
} from 'react-router-dom';
import MobileNum from './MobileNum.jsx';
import IdNumber from './IdNum.jsx';
import CreatePassword from './createPassword .jsx';

class SignUp extends Component {
  constructor(props) {
    super(props);
  }

  render() {
    return (
      <div>
        <Router>
          <Switch>
                //// Here needs to know how to navigate to each component …
Run Code Online (Sandbox Code Playgroud)

navigation reactjs react-router react-redux react-router-dom

3
推荐指数
1
解决办法
2296
查看次数

如何使用`createContext`从父组件向子组件传递值?

而不是传递的props父母和child1(的child2的父) - >到的child2,我想使用createContext和接收与价值useContext
我试图做的是不正确的,因为我收到了一个错误**'booleanContext' is not defined**。

如何传递createContext状态/值?

App.js
CreatePass 是 SignUp 中的一个组件

  const [signUpFirst, setIfSignUp] = useState(true);
  const booleanContext = createContext(setIfSignUp);
  
 return (
    <booleanContext.Provider value={setIfSignUp}>

   <div>
     </Switch>
   <Route exact path='/signup'>
          <SignUp homePage={exitSignUpPage} setUserNumber={setUserID} />
        </Route>
        <Route exact path='/home'>
          <Home userIDNumber={userID} setIfSignUp={setIfSignUp} />
        </Route>
      <CreatPass /> 
      </Switch>
     </div>
    </booleanContext.Provider>
  );
Run Code Online (Sandbox Code Playgroud)

注册.js

  render() {
    return (
      <div className='signUp-div'>
        <Header />
        <Router history={history}>
          <div className='form-div'>
            <Redirect to='/signup/mobile' />
            <Switch>
              <Route exact path='/signup/mobile' …
Run Code Online (Sandbox Code Playgroud)

reactjs react-hooks use-context createcontext

0
推荐指数
1
解决办法
194
查看次数