小编Kit*_*ten的帖子

如何使用 react-router-dom 创建动态路由?

我学习反应并知道如何创建静态路由,但无法弄清楚动态路由。也许有人可以解释一下,我将不胜感激。让有两个组件,一个用于渲染路由,另一个作为路由的模板。也许代码有问题,但希望你明白..

这是渲染路由的组件:

import React, { Component } from 'react';
import axios from 'axios';
import Hero from './Hero';

class Heroes extends Component {
  constructor(props) {
    super(props);
    this.state = {
      heroes: [],
      loading: true,
      error: false,
    };
  }
  componentDidMount() {
    axios.get('http://localhost:5555/heroes')
      .then(res => {
        const heroes = res.data;
        this.setState({ heroes, loading: false });
      })
      .catch(err => { // log request error and prevent access to undefined state
        this.setState({ loading: false, error: true });
        console.error(err);
      })
  }
  render() {
    if (this.state.loading) {
      return …
Run Code Online (Sandbox Code Playgroud)

json reactjs

12
推荐指数
3
解决办法
2万
查看次数

如何在 Svelte 组件中基于 props 定义 CSS 字段?

我刚接触 Svelte,对基于道具的条件样式很感兴趣。我有两个 Svelte 组件 -ParentChild,只是为了理解。

父级将 props 传递给子级 - 该pt属性应该是padding-top子级 css 的字段。代码Parent如下:

<script>
  import Child from "./Child.svelte";
</script>

<Child pt="45px" />
Run Code Online (Sandbox Code Playgroud)

子组件有两种样式:padding-toppadding-bottom。根据传递的 props,创建相应的样式字段。如果没有传递任何 props,那么该组件将没有样式。在下面的示例中,我们仅传递pt激活padding-top字段的道具:

<script>
  export let pb, pt;
  let styles = "";
  if (pt) styles += "--pt:" + pt;
  if (pb) styles += "--pb:" + pb;
</script>

<div class="child" style={styles}>
  <h3>Hello</h3>
</div>

<style>
  .child {
    padding-top: var(--pt);
    padding-bottom: var(--pb);
  }
</style> …
Run Code Online (Sandbox Code Playgroud)

javascript svelte sveltekit

6
推荐指数
2
解决办法
2118
查看次数

MondoDB/Mongoose查询响应太慢

我刚接触 MongoDB/Mongoose,并且使用一个非常大的数据库(超过 25000 个文档)。我需要配置不同的查询:按字段、前 10 个文档、按 id。问题在于性能 - 服务器响应太慢(大约 10-15 秒)。请告诉我如何配置才能使服务器响应快?它仅取决于架构设置,还是还可以取决于其他事物,例如数据库连接参数或查询参数?PS 查询应按“地区”和“地点”。谢谢你的帮助!

这是架构:

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const houseSchema = new Schema({
  code: {
    type: String,
    required: false
  },
  name: {
    type: String,
    required: true
  },
  district: {
    type: String,
    required: true
  },
  locality: {
    type: String,
    required: false
  },
  recountDate: {
    type: Date,
    default: Date.now
  },
  eventDate: {
    type: Date,
    default: Date.now
  },
  events: {
    type: Array,
    default: []
  }
});

module.exports = mongoose.model('House', houseSchema); …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb node.js express

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

如何使用 Mongoose 从集合中的所有文档中删除字段?

我有一个存储在 MongoDB 数据库中的文档集合,如下所示:

[
  {
    _id: 5fe72e02b237503088b8889b,
    code: '000001403',
    name: 'John',
    date: 2018-12-01T21:00:00.000Z,
    __v: 1
  },
  {
    _id: 5fe72e02b237503088b8889c,
    code: '000001404',
    name: 'Michael',
    date: 2018-12-01T21:00:00.000Z,
    __v: 1
  }
]
Run Code Online (Sandbox Code Playgroud)

我需要从集合中的所有文档中删除“code”字段并保留文档,即我需要以下结果:

[
  {
    _id: 5fe72e02b237503088b8889b,
    name: 'John',
    date: 2018-12-01T21:00:00.000Z,
    __v: 1
  },
  {
    _id: 5fe72e02b237503088b8889c,
    name: 'Michael',
    date: 2018-12-01T21:00:00.000Z,
    __v: 1
  }
]
Run Code Online (Sandbox Code Playgroud)

我还从模型中删除了该字段:

const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const ItemSchema = new Schema({
  // code: String,
  name: String,
  date: {
    type: Date,
    default: Date.now
  },
});

module.exports …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb node.js express

4
推荐指数
1
解决办法
3805
查看次数

MUI 自动导入建议在 VS Code、Next.js 13 项目中不起作用

我正在开发一个已安装的Next.js 13项目MUI,但 VS Code 不提供从@mui/material库的自动导入。这如屏幕截图所示。

在此输入图像描述

从其他库自动导入在此文件夹中工作。在其他不基于 的项目中Next js 13,自动导入MUI也可以工作。请告诉我如何解决这个问题?

这是我的tsconfig.json如果有帮助的话:

{
  "compilerOptions": {
    "target": "es5",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noEmit": true,
    "esModuleInterop": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "jsx": "preserve",
    "incremental": true,
    "plugins": [
      {
        "name": "next"
      }
    ],
    "paths": {
      "@/*": ["./*"]
    }
  },
  "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
  "exclude": ["node_modules"]
}
Run Code Online (Sandbox Code Playgroud)

感谢您的关注!

javascript typescript reactjs material-ui next.js

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

如何在草稿 js 编辑器中渲染提供的 HTML?

我使用 Draft.js 编辑器来创建和更新帖子。请告诉我如何在 Draft.js 编辑器中渲染 HTML 文本。\n我尝试使用 renderHTML,但出现错误

\n\n
\n

“\'editorState\' 未定义 no-undef”

\n
\n\n

如果没有 renderHTML 函数,我会在编辑器中获取带有标签的 HTML。\n请告诉我,如何配置组件来呈现“正确的 HTML”?

\n\n

这是清单:

\n\n
import React, { Component } from \'react\';\nimport DatePicker from "react-datepicker";\nimport "react-datepicker/dist/react-datepicker.css";\nimport { EditorState, getCurrentContent, getPlainText, ContentState } from \'draft-js\';\nimport { Editor } from \'react-draft-wysiwyg\';\nimport \'../../node_modules/react-draft-wysiwyg/dist/react-draft-wysiwyg.css\';\nimport { stateToHTML } from \'draft-js-export-html\';\nimport gql from \'graphql-tag\';\nimport { Mutation } from \'react-apollo\';\nimport renderHTML from \'react-render-html\';\n\nconst updateMutation = gql`\n  mutation UpdateHeroMutation($id: ID!, $title: String!, $description: String!, $date: String!) {\n  updateHero(heroUpdate: {_id: $id, …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs draftjs react-draft-wysiwyg

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

无法在包含在 React 组件中的富文本编辑器 (react-draft-wysiwyg) 中获取输入的数据

我正在创建一个包含富文本编辑器的 React 组件。我选择了 react-draft-wysiwyg 来编辑或创建文本,然后发送到服务器。我只会在代码中给出导致困难的功能。我使用 axios 发送请求。出于某种原因,我在发送 POST 请求时无法从表单中获取正确的数据。我使用命令检查:

console.log(data);
console.log(this.state.editorState);
Run Code Online (Sandbox Code Playgroud)

但是现在在表单中输入了文本。我想弄清楚,谢谢大家!

这是代码:

import React, { Component } from 'react';
import { EditorState } from 'draft-js';
import { Editor } from 'react-draft-wysiwyg';
import '../../node_modules/react-draft-wysiwyg/dist/react-draft-wysiwyg.css';
import axios from 'axios';

class AddPost extends Component {
  constructor(props) {
    super(props);
    this.state = {
      editorState: EditorState.createEmpty()
    };
    this.handleSubmit = this.handleSubmit.bind(this);
  }

  handleChange = (e) => {
    this.setState({[e.target.name]: e.target.value})
  }

  onEditorStateChange = (editorState) => {
    this.setState({
      editorState
    });
  }

  handleSubmit(e) {
    e.preventDefault();

    const data = { …
Run Code Online (Sandbox Code Playgroud)

reactjs draftjs react-draft-wysiwyg

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

如何在Ember JS中获得REST Api?

我使用的是与REST Api一起使用的Ember样板。

数据应从Laravel后端接收,并呈现在Ember模板中。我将不胜感激。

这是索引(/)路由的响应:

{
    "responce":[
        {
            "id":0,
            "title":"main",
            "content": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Vitae, aliquam."
        },
        {
            "id":1,
            "name":"about",
            "content": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident, obcaecati? Accusantium ex dolorum voluptate deleniti?"
        },
        {
            "id":2,
            "name":"contacts",
            "content": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptates voluptatibus exercitationem molestias rem."
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我想应该有某种循环来处理接收到的数据并将其呈现。结果应该是这样的:

<h3>main</h3>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Vitae, aliquam.</p>
<h3>about</h3>
<p>Lorem ipsum dolor sit amet consectetur …
Run Code Online (Sandbox Code Playgroud)

ember.js

-2
推荐指数
1
解决办法
81
查看次数