小编azi*_*ium的帖子

如何摆脱React Router的Link组件的下划线?

我有以下内容:

在此输入图像描述

如何摆脱蓝色下划线?代码如下:

<Link to="first"><MenuItem style={{paddingLeft: 13, textDecoration: 'none'}}> Team 1 </MenuItem></Link>
Run Code Online (Sandbox Code Playgroud)

MenuItem组件来自http://www.material-ui.com/#/components/menu

任何见解或指导将不胜感激.先感谢您.

javascript reactjs react-router

85
推荐指数
11
解决办法
8万
查看次数

try..catch没有捕获异步/等待错误

也许我误解了如何捕捉错误async/await应该来自像这样的文章https://jakearchibald.com/2014/es7-async-functions/和这个http://pouchdb.com/2015/03/05/taming- the-async-beast-with-es7.html,但是我的catch块没有捕获400/500.

async () => {
  let response
  try {
   let response = await fetch('not-a-real-url')
  }
  catch (err) {
    // not jumping in here.
    console.log(err)
  }
}()
Run Code Online (Sandbox Code Playgroud)

有关codepen的例子,如果有帮助的话

javascript try-catch async-await fetch-api

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

快速重定向错误:发送后无法设置标头

当此代码命中重定向行时,它会抛出"在发送错误后无法设置标头"并且不会重定向.我对没有完全理解标题以及如何表达与它们一起工作感到内疚.关于这个错误的这个链接让我感到困惑,可能是因为我对正在发生的事情没有基本的了解.此外,我知道这是一种天真的验证方法,但我只是想让基本的东西工作.

    app.post('/api/login', function(req, res) {
    if (req.body.password === auth.password) {
        auth.date = new Date()
        res.redirect('/admin')
      } else {
        console.log("wrong pw")
      }
    })
Run Code Online (Sandbox Code Playgroud)

更新:谢谢@Brendan Ashworth我错过了一个显而易见的其他内容,我现在已经添加了,不再收到错误.

但是这一行不会改变我页面的内容

res.sendfile('./public/admin/views/tunes.html')
Run Code Online (Sandbox Code Playgroud)

它在我用auth检查包装它之前有效

var auth = require('../config/auth')

module.exports = function(app) {

/*
 *  CONTENT API
 */

 //...

/*
 *  Admin Routes
 */
app.get('/admin/login', function(req, res) {
    res.sendfile('./public/admin/views/login.html')
})

app.post('/api/login', function(req, res) {
    if (req.body.password === auth.password) {
        auth.date = new Date()
        res.redirect('/admin')
    } else {
        res.json({message: 'Wrong password!'})
    }
})

app.get('/admin', function(req, res) { …
Run Code Online (Sandbox Code Playgroud)

node.js express

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

在渲染之前查找反应组件或图像的大小

我有一个不同大小的图像列表.

images = ['https://example.com/1.jpg','https://example.com/2.jpg', ... ]
Run Code Online (Sandbox Code Playgroud)

我想在渲染之前得到一个高度数组.然后,我将仅基于scrollHeight渲染应该在视口中的图像.例如使用React Infinte

我可以轻松地做出反应组件之外的事情

let imgHeights =  images.map(imgUrl => {
    var img  = new Image()
    img.src = imgUrl
    return img.height;
})
Run Code Online (Sandbox Code Playgroud)

new image()由于它取决于DOM,因此不起作用.

我的React组件渲染方法如下所示.

var ImageList = (images) => {
     let buildImageList = images.map(imgUrl => {
         return <img src= {imgUrl}></img>
     })

     let imgHeights = images.map(imgUrl => {
         let img = new Image()
         img.src = imgUrl
         return img.height //this doesn't work 
     })

     return (
         <Infinte elemetHeight = {imgHeights} onInfiniteLoad ={buildImageList} />
     ) 
} …
Run Code Online (Sandbox Code Playgroud)

reactjs react-dom

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

无状态组件中的clickHandler?

我是一个React noobie,我正在尝试使用无状态组件创建一个简单(可重用)历史记录后退按钮,但我不确定如何合并/在哪里放置clickHandler.我是否需要使用有状态组件?这是我正在尝试做的非工作近似.

import React from 'react';

const BtnBack = () => (
  <button className="btn btn-back" onClick={this.handleClick}>BACK</button>
);

handleClick() {
  // history back code
};

export default BtnBack;
Run Code Online (Sandbox Code Playgroud)

reactjs

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

React 组件渲染但在 Rails 应用程序中不可见

正如标题所说,当我运行 rails server 时,我的反应组件都不可见。我正在使用 gem react-rails。我知道他们正在渲染,因为在检查页面的 body 标签时,它有<div data-react-class="Home" data-react-props="{}"></div>.

为了测试它是否是我的电脑,我制作了另一个 rails 应用程序,在我的根目录中创建了一个具有完全相同格式的 react 组件,即

class Home extends React.Component {
  render() {
    return (
      <h1>Hello</h1>
    )
  }
}
Run Code Online (Sandbox Code Playgroud)

它出现在屏幕上。我的控制台中绝对没有错误,所以我不知道问题是什么。两个 Rails 应用程序(可见和不可见)之间的区别在于,损坏的应用程序使用了设计、引导程序,并且具有更多的迁移/模型/控制器。此外,我删除了损坏的涡轮链接,但即使将其重新添加,也没有任何区别。

ruby-on-rails reactjs

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

变量不分配内部承诺

也许我很困,但在什么情况下会发生以下情况?

let foo;

page
  .evaluate(() => {
    // return works... but not closure assignment

    // doesn't work
    foo = 'foo';

    // works
    return 'bar';
  })
  .then(bar => {
    console.log('foobar', foo, bar);
    // > foobar undefined bar
  });
Run Code Online (Sandbox Code Playgroud)

这是在使用木偶操纵者的摩卡测试中发生的

更新:完整的代码

节点9.11.2

/* global describe, it, before, after */

const fs = require('fs-extra');
const path = require('path');
const assert = require('assert');
const puppeteer = require('puppeteer');
const sleep = require('shleep');

const extPath = path.resolve(__dirname, '..', 'build');
const { name } = fs.readJSONSync(path.resolve(extPath, …
Run Code Online (Sandbox Code Playgroud)

javascript mocha.js promise async-await puppeteer

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

atom如何将.js文件的默认语法高亮显示更改为language-babel

这一切都在标题中..突然原子不再默认language-babel为.js文件,我不知道如何回到以前的行为.

更新 - 当前config.cson:

"*":
  core:
    telemetryConsent: "no"
  editor:
    fontFamily: "Operator Mono Lig"
  "exception-reporting":
    userId: "a8f4cc72-fe9c-4093-b562-fcb344219d50"
  "language-dotenv":
    dotenvFileNames: [
      ".env"
      ".env.schema"
    ]
  "linter-eslint": {}
  "linter-ui-default": {}
  "prettier-atom":
    formatOnSaveOptions:
      enabled: true
      isDisabledIfNotInPackageJson: true
    prettierOptions:
      bracketSpacing: false
      semi: false
    useEslint: true
  "tree-view":
    hideVcsIgnoredFiles: true
  welcome:
    showOnStartup: false
".languagebabel.ttlextension":
  editor:
    softWrap: true
Run Code Online (Sandbox Code Playgroud)

我尝试了一些你的建议的变化,显然我搞砸了,因为原子不能再发射了

javascript atom-editor babeljs

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

由 async/await 引起的 TypeError: destroy 不是 useEffect 中的函数

我的 React Native捆绑(0.61.5)了一个16.9.0React,但它不是最新的。在应用程序中useEffect返回错误TypeError: distroy is not a function

在此输入图像描述

这是useEffect代码:

useEffect(async () => {
    try {
      let url = `${GLOBAL.BASE_URL}/api/events/active?group_id=${encodeURIComponent(group_id)}&_role=${role}&_grpmember_id=${grpmember_id}&_group_id=${encodeURIComponent(group_id)}&_device_id=${encodeURIComponent(device_id)}`;
      let res =  await fetch(url, {
        method: "GET",
          headers: {
          'Accept': 'application/json, text/plain',
          'Content-Type': 'application/json',   
          "x-auth-token": token.password,
          "x-auth-secret": token.username,
        }
      });
      //check secret token 
      let secret = res.headers.get("x-auth-secret");
      let jwttoken = res.headers.get("x-auth-token");
      res = await res.json();
      if (secret && jwttoken && (typeof secret !== 'undefined') && (typeof jwttoken !== 'undefined') && …
Run Code Online (Sandbox Code Playgroud)

reactjs react-native

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

Docker EACCES 权限被拒绝 mkdir

我的朋友给了我一个带有 dockerfile 的项目,该项目似乎对他来说工作得很好,但我收到了权限错误。

FROM node:alpine

RUN mkdir -p /usr/src/node-app && chown -R node:node /usr/src/node-app

WORKDIR /usr/src/node-app

COPY package.json yarn.lock ./
COPY ./api/package.json ./api/
COPY ./iso/package.json  ./iso/

USER node
RUN yarn install --pure-lockfile

COPY --chown=node:node . .

EXPOSE 3000
Run Code Online (Sandbox Code Playgroud)

error An unexpected error occurred: "EACCES: permission denied, mkdir '/usr/src/node-app/node_modules/<project_name>/api/node_modules'".

会不会是docker版本错误?

在此输入图像描述

chown docker docker-compose

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