小编Eri*_*c R的帖子

对于单个排水沟,是否可以覆盖网格行间隙/夹持柱间隙?

有没有办法将单个grid-row-gap特定大小设置为与网格的其余部分不同?

使用案例:网格的顶行与第二行的间距应小于网格的其余部分,因为它充当标题.

css css3 css-grid

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

获取请求成功完成,但响应对象为空

我在componentDidMount()React 组件的方法中有一个 fetch 请求:

const request = new Request(url, {
    mode: 'no-cors',
    method: 'get',
    headers: {
        Accept: 'application/json'
    }
});

fetch(request)
    .then(function(response) {  
        console.log('Response: ', response);

        return response.text();  
    })
    .then(function(data) {
        // _this.setState({ data: data });

        console.log('Success: ', data);
        console.log('Request succeeded with JSON response', data);
    }).catch(function(error) {
        console.log('Request failed', error);
    });
Run Code Online (Sandbox Code Playgroud)

当组件加载时,我可以看到在控制台中发出请求并返回正确的数据;但是,我的 Response 对象始终为空:

Response { type: "opaque", url: "", redirected: false, status: 0, ok: false, statusText: "", headers: Headers, bodyUsed: false }
Run Code Online (Sandbox Code Playgroud)

response.text()返回 null,我真的不确定发生了什么。我之前也用过同样的方法,没有出现过这个问题,所以不确定是第三方数据源的原因还是什么的不一样。

有任何想法吗?

javascript response fetch reactjs fetch-api

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

重新调度键盘事件

开发 Angular / TypeScript 应用程序,其中我们有一个自定义的基本文本编辑器。

尝试适当地处理用户突出显示的选择然后按下按键以替换该选择的情况。

为了解决这个问题,我们需要在插入其预期内容之前正确删除他们选择的“隐藏”组件。

我最初的想法是:

  1. 捕获KeyDown事件
  2. 检查是否选择了突出显示的范围
  3. 如果是,则删除所有选定的内容
  4. 重新调度 KeyDown 事件,以便插入适当的内容

这是我们方法的截断版本onKeyDown

cloneKeyboardEvent(eventToClone): KeyboardEvent {
    return new KeyboardEvent(eventToClone.type, {
        key: eventToClone.key,
        code: eventToClone.code,
        location: eventToClone.location,
        ctrlKey: eventToClone.ctrlKey,
        shiftKey: eventToClone.shiftKey,
        altKey: eventToClone.altKey,
        metaKey: eventToClone.metaKey,
        repeat: eventToClone.repeat
    });
}

onKeyDown($event: KeyboardEvent) {
    // Check if there's a selection
    if (this.isSelectionRange) {
        Helpers.stopEvent($event);

        // Delete components in selection
        this.deleteComponentsInSelection($event);

        const clonedEvent = this.cloneKeyboardEvent($event);
        document.dispatchEvent(clonedEvent);

        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

一切正常到#4。

clonedEvent事件与原始事件匹配,但不会触发。debugger我在 的开头插入了 a onKeyDown(),它只在初始按键时被击中一次,而不是在 …

javascript keyboard-events dispatchevent typescript angular

5
推荐指数
0
解决办法
619
查看次数

将事件方法传递给孙组件

我对React还是有点陌生​​,所以如果这是一个newb问题,请原谅我。

我有一个基本组件(页面),它使用状态来控制是否显示模式弹出窗口:

constructor(props) {
    super(props);

    this.state = {
        showModal : false,
        modalContent : 'Initial Modal Content'
    };

    this.showModal = this.showModal.bind(this);
    this.hideModal = this.hideModal.bind(this);
}

showModal(modalContent) {
    this.setState({
        showModal : true,
        modalContent : modalContent
    });
}

hideModal(e) {
    this.setState({showModal : false});
}
Run Code Online (Sandbox Code Playgroud)

我的问题是我希望孙子组件能够打开我的模态。

我知道我可以通过将状态传递给子组件然后再传递给孙组件来做到这一点: <PartnersTable showModal={this.showModal} partners={PARTNERS} />

对我来说,这似乎有些草率,但这也许只是React的方式。

有人可以让我知道我是否正确执行此操作,或者是否有更清洁的方法来执行此操作?

您可以在GitHub上查看我的完整应用程序:https : //github.com/CCChapel/Thy-Kingdom-Come/blob/master/react.js

谢谢!

-埃里克

reactjs

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