我学习反应并知道如何创建静态路由,但无法弄清楚动态路由。也许有人可以解释一下,我将不胜感激。让有两个组件,一个用于渲染路由,另一个作为路由的模板。也许代码有问题,但希望你明白..
这是渲染路由的组件:
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) 我刚接触 Svelte,对基于道具的条件样式很感兴趣。我有两个 Svelte 组件 -Parent和Child,只是为了理解。
父级将 props 传递给子级 - 该pt属性应该是padding-top子级 css 的字段。代码Parent如下:
<script>
import Child from "./Child.svelte";
</script>
<Child pt="45px" />
Run Code Online (Sandbox Code Playgroud)
子组件有两种样式:padding-top和padding-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) 我刚接触 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) 我有一个存储在 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) 我正在开发一个已安装的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)
感谢您的关注!
我使用 Draft.js 编辑器来创建和更新帖子。请告诉我如何在 Draft.js 编辑器中渲染 HTML 文本。\n我尝试使用 renderHTML,但出现错误
\n\n\n\n\n“\'editorState\' 未定义 no-undef”
\n
如果没有 renderHTML 函数,我会在编辑器中获取带有标签的 HTML。\n请告诉我,如何配置组件来呈现“正确的 HTML”?
\n\n这是清单:
\n\nimport 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) 我正在创建一个包含富文本编辑器的 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) 我使用的是与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) javascript ×5
reactjs ×4
draftjs ×2
express ×2
mongodb ×2
mongoose ×2
node.js ×2
ember.js ×1
json ×1
material-ui ×1
next.js ×1
svelte ×1
sveltekit ×1
typescript ×1