小编Dan*_*ith的帖子

Reactjs - 使用 oneOfType 检查 proptypes

我想允许组件具有两种可能的属性类型之一(字符串或未定义)。我正在使用 PropTypes.oneOfType 来执行此操作。

import React from 'react';
import PropTypes from 'prop-types';

Product.propTypes = {
    productTag: PropTypes.oneOfType([
        PropTypes.string, undefined
    ]),
};

Product.defaultProps = {
    productTag: undefined
};
Run Code Online (Sandbox Code Playgroud)

这是正确的方法吗?

reactjs react-proptypes

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

Bootstrap下拉菜单出现在其他DIV的后面

我正在使用Bootstrap v3.3.6所以我在我的'top-box'div上使用他们的'下拉菜单'来显示子菜单.但出于某种原因,"下拉菜单"出现在我网站上的"标题品牌"DIV背后.我在我的CSS中添加了z-index,但似乎仍然没有做任何事情,请帮忙.

这是我的项目URL:点击这里

<header id="header">

    <!-- BEGIN TOP BAR -->
    <div class="top-box animatedq fadeInDownq">
        <div class="left-bar">
            <ul class="list-inline top-contact-info">
                <li><i class="fa fa-mobile-phone"></i> 24X7 Contact : +91 9830556230</li>
            </ul>
        </div>
        <div class="right-bar">
            <ul class="list-inline top-menu-items" role="navigation">
                <li><a href="#"><i class="fa fa-briefcase"></i> Create Wallet</a></li>
                <li><a href="#"><i class="fa fa-sign-in"></i> User Login</a></li>
                <li><a href="#"><i class="fa fa-sign-in"></i> Agent Login</a></li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
                    <ul class="dropdown-menu submenu">
                        <li><a href="#">Action</a></li>
                        <li><a href="#">Another action</a></li>
                        <li><a href="#">Something else here</a></li>
                        <li class="divider"></li>
                        <li><a href="#">Separated link</a></li>
                        <li …
Run Code Online (Sandbox Code Playgroud)

html css twitter-bootstrap

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

CSS - 平滑扩展按钮宽度并在悬停时显示文本

我试图在悬停状态下制作一个按钮动画,其中初始状态按钮将仅显示一个图标,悬停在其上后将扩大宽度,然后显示其中的文本。

我无法添加预定义的最大宽度或宽度或宽度值,因为我不知道从后端服务呈现的文本的长度是多少

我在上面添加了一些 CSS 代码,但它无法正常工作。我需要的流程是这样的 -

  1. 带图标的初始状态显示按钮
  2. 悬停后按钮的宽度将扩展到文本长度
  3. 然后显示按钮内的文本

.sti_container{
  position: relative;
}

.btn{
  position: relative;
  display: inline-block;
  padding: 15px;
  background-color: blue;
  cursor: pointer;
  outline: none;
  border: 0;
  vertical-align: middle;
  text-decoration: none;
  color: #fff;
  border-radius: 25px;
  -webkit-transition: width 0.5s;
  transition: width 0.5s;
}
.btn .btn-text{
  width: 0;
  display: inline-block;
  -webkit-transition: color 2s;
  transition: color 2s;
  vertical-align: top;
  white-space: nowrap;
  overflow: hidden;
  color: blue;
}
.btn:hover .btn-text{
  width: auto;
  color: white;
}
Run Code Online (Sandbox Code Playgroud)
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"/>
<div class="sti_container">
  <button class="btn">
    <span class="btn-icon"><i …
Run Code Online (Sandbox Code Playgroud)

html css

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

React - 如何防止子组件的点击事件

在标记为重复之前,它是不同的。我有这样的场景,我想将一些非预定义的元素放入子组件中。当用户单击该元素时,它会在父元素事件上触发。单击子级时如何停止父级上的事件触发器?让我用下面的例子来解释更多 -

因此,它基本上是一个手风琴列表,通过单击每个项目标题 div ( ) ,将显示list-container__item____title正文 div ( )。list-container__item____body

现在,在标题 div 内,我有一个链接 ( list-container__item____title--link),它可以打开一个覆盖层(子组件)。叠加内容来自API调用,其内容为HTML。我无法为该元素添加更多功能,因为我不知道其中包含什么,它基于用户的选择。如果 HTML 中有一些可点击的元素,如锚点、按钮等,则状态 ( activeItem) 会更新为空 ( '') 值。结果是相应的项目被折叠。有什么办法可以阻止这一事件的发生吗?

import React from 'react';

class DiamondFilters extends React.Component {

    constructor(props) {
        super(props);

        this.state = {
            activeItem: ''
        };
    }

    handleItemToggle = (name) => {
        if (this.state.activeItem === name) {
            this.setState({ activeItem: '' })
        } else {
            this.setState({ activeItem: name })
        }
    }

    render() {
        return (
            <div className="menu">
                <div className="list-container">
                    <div …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

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

Javascript - 将对象转换为数组对象

尝试将以下对象(从 API 响应中获取)转换为数组对象。

const oldObj = {
    Georgia : {
        notes: "lorem ipsum",
        lat: "32.1656",
        long: "82.9001"
    },
    Alabama : {
        notes: "lorem ipsum",
        lat: "32.3182",
        long: "86.9023"
    }
}
Run Code Online (Sandbox Code Playgroud)

我的预期如下:

const desireArray = [
    {
        name: "Georgia",
        notes: "lorem ipsum",
        lat: "32.1656",
        long: "82.9001"
    },
    {
        name: "Alabama",
        notes: "lorem ipsum",
        lat: "32.3182",
        long: "86.9023"
    }
];
Run Code Online (Sandbox Code Playgroud)

尝试使用 forEach 但是,我认为这不是方法,似乎向我返回了错误。

oldObj.forEach((el, i) => {
    console.log(el);
});
Run Code Online (Sandbox Code Playgroud)

类型错误:oldObj.forEach 不是函数

有什么帮助吗?

javascript arrays

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

JavaScript - 在 Javascript 中获取 DOM 元素中包含的文本?

我有一个<div>里面有一些孩子,里面包含如下文字:

<div class="accordion-item__panel">
    <h5>The baby tears the pages of the</h5>
    <p>books with her <span>hands.</span></p>
    <p class="body-small">What is the funniest thing the baby does?</p>
</div>
Run Code Online (Sandbox Code Playgroud)

我想要 DIV 中包含的文本accordion-item__panel和输出,例如:

The baby tears the pages of the books with her hands. What is the funniest thing the baby does?
Run Code Online (Sandbox Code Playgroud)

电流输出:

The baby tears the pages of the books with her hands. hands. What is the funniest thing the baby does?
Run Code Online (Sandbox Code Playgroud)

添加了“手”。两倍,因为它在查询元素时保留了两次。

JavaScript:

let desc = "";
const descItems = …
Run Code Online (Sandbox Code Playgroud)

html javascript foreach children queryselector

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