小编saa*_*adq的帖子

使用async/await和forEach循环

asyncawait循环中使用是否有任何问题?我正在尝试循环遍历文件数组和forEach每个文件的内容.

import fs from 'fs-promise'

async function printFiles () {
  const files = await getFilePaths() // Assume this works fine

  files.forEach(async (file) => {
    const contents = await fs.readFile(file, 'utf8')
    console.log(contents)
  })
}

printFiles()
Run Code Online (Sandbox Code Playgroud)

这段代码确实有效,但这可能会出错吗?我有人告诉我你不应该使用await这样的高阶函数,所以我只是想问一下这是否有任何问题.

javascript node.js promise async-await ecmascript-2017

864
推荐指数
24
解决办法
38万
查看次数

与React-Router的活动链接?

我尝试作出反应,路由器(V4)和我有开始关闭导航到具有的一个问题Link的是active.如果我点击任何Link标签,那么活动的东西就会开始工作.但是,我希望Home Link能够在应用程序启动时立即激活,因为这是在/路径上加载的组件.有没有办法做到这一点?

这是我目前的代码:

const Router = () => (
  <BrowserRouter>
    <div>
      <Nav>
        <Link activeClassName='is-active' to='/'>Home</Link> {/* I want this to start off as active */}
        <Link activeClassName='is-active' to='/about'>About</Link>
      </Nav>

      <Match pattern='/' exactly component={Home} />
      <Match pattern='/about' exactly component={About} />
      <Miss component={NoMatch} />
    </div>
  </BrowserRouter>
)
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 reactjs react-router

63
推荐指数
3
解决办法
5万
查看次数

使用material-ui创建导航栏

我正在尝试使用material-ui创建一个简单的导航栏,看起来就像他们在网站上使用的那个.这是我写的试图复制它的代码:

import React from 'react'
import {AppBar, Tabs, Tab} from 'material-ui'

class Nav extends React.Component {
  render() {
    return (
      <AppBar title="My App">
        <Tabs>
          <Tab label="Item 1" />
          <Tab label="Item 2" />
          <Tab label="Item 3" />
          <Tab label="Item 4" />
        </Tabs>
      </AppBar>
    )
  }
}

React.render(<Nav />, document.body)
Run Code Online (Sandbox Code Playgroud)

问题是,标签出现非常奇怪,单击选项卡没有任何效果.截图:在此输入图像描述

任何帮助将非常感谢.

javascript reactjs material-ui

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

使用redux创建秒表

我一直在努力制作一个反应和减速秒表.我一直在努力弄清楚如何在redux中设计这样的东西.

首先想到的是有一个START_TIMER设置初始offset值的动作.在那之后,我用来反复setInterval触发一个TICK动作,通过使用偏移计算已经过了多少时间,将其添加到当前时间,然后更新offset.

这种方法似乎有效,但我不确定如何清除间隔来阻止它.此外,似乎这种设计很差,可能有更好的方法.

这是一个完整的JSFiddle,它具有START_TIMER正常运行的功能.如果您只是想看看我的减速机现在的样子,这里是:

const initialState = {
  isOn: false,
  time: 0
};

const timer = (state = initialState, action) => {
  switch (action.type) {
    case 'START_TIMER':
      return {
        ...state,
        isOn: true,
        offset: action.offset
      };

    case 'STOP_TIMER':
      return {
        ...state,
        isOn: false
      };

    case 'TICK':
      return {
        ...state,
        time: state.time + (action.time - state.offset),
        offset: action.time
      };

    default: 
      return state;
  }
}
Run Code Online (Sandbox Code Playgroud)

我真的很感激任何帮助.

javascript ecmascript-6 reactjs redux

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

在Sublime Text中大写选择

有没有办法将Sublime的选择资本化?例如,如果我有一些文字word,我想输出Word.

我知道已经有一个选项可以将case转换为小写或大写,但是这些会分别导致wordWORD.有没有办法只把首字母大写?

capitalize sublimetext sublimetext2 sublimetext3

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

物化页脚不会到页面底部

有没有办法将页脚保持在页面底部,即使没有很多内容?我跟着Materialise的页面上的说明和有我之间的所有HTML <header>,<main><footer>标签.我根本没有将任何自己的CSS应用到页脚.

任何帮助,将不胜感激.

在此输入图像描述

这是我的HTML:

<body>
  <header>
    <nav role="navigation">
      <div class="nav-wrapper container"><a id="logo-container" href="/" class="brand-logo">Some Title <i class="material-icons left hide-on-med-and-down">apps</i></a>
        <ul id="dropdown" class="dropdown-content">
          <li><a href="">Register</a></li>
          <li class="divider"></li>
          <li><a href="">Sign In</a></li>
        </ul>
        <ul class="right hide-on-med-and-down">
          <li id="timer-tab"><a href="">Tab 1</a></li>
          <li id="stats-tab"><a href="">Tab 2</a></li>
          <li id="graphs-tab"><a href="">Tab 3</a></li>
          <li><a href="" data-activates="dropdown" class="dropdown-button">Tab 4<i class="material-icons right">arrow_drop_down</i></a></li>
        </ul>
      </div>
    </nav>
  </header>

  <main>
    <div class="container">
      <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et …
Run Code Online (Sandbox Code Playgroud)

html css footer materialize

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

格式化计时器而不会失去准确性?

我有一系列开始/停止时间.我基本上想要显示每个条目花费的时间,以及所有条目的总时间.这是我写的尝试这样做的代码:

function timeFormatter (milliseconds) {
  const padZero = (time) => `0${time}`.slice(-2);

  const minutes = padZero(milliseconds / 60000 | 0);
  const seconds = padZero((milliseconds / 1000 | 0) % 60);
  const centiseconds = padZero((milliseconds / 10 | 0) % 100);

  return `${minutes} : ${seconds} . ${centiseconds}`;
}

// Example stopwatch times
const timeIntervals = [
  { startTime: 1470679294008, stopTime: 1470679300609 },
  { startTime: 1470679306278, stopTime: 1470679314647 },
  { startTime: 1470679319718, stopTime: 1470679326693 },
  { startTime: 1470679331229, stopTime: 1470679336420 }
];

// …
Run Code Online (Sandbox Code Playgroud)

javascript precision rounding ecmascript-6

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

flowtype:"对象文字无法决定在redux操作中使用常量时选择哪种情况"

编辑:这是一个完整的GitHub回购的最小示例,显示了该问题.

我有一个简单的Counter应用程序.以下是我的动作创作者:

actions.js

/**
 * @flow
 */

import { INCREMENT, DECREMENT } from '../constants'

type Action =
  | { type: 'INCREMENT' }
  | { type: 'DECREMENT' }

function increment(): Action {
  return {
    type: INCREMENT
  }
}

function decrement(): Action {
  return {
    type: DECREMENT
  }
}

export { increment, decrement }
export type { Action }
Run Code Online (Sandbox Code Playgroud)

目前,我在incrementdecrement函数中都收到错误,这些错误表明对象文字无法决定选择联合类型的情况.

要修复这些错误,我可以更改type: INCREMENTtype: 'INCREMENT'并更改type: DECREMENTtype: 'DECREMENT'.但是,我将在多个地方使用这个常量(比如reducer),所以我希望能够导入常量并在那里使用它.这不是它在flowtype中完成的方式吗? …

javascript flowtype redux

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

在更改innerHTML时有没有办法产生过渡效果?

我正在尝试在项目之间切换时添加过渡效果.这个代码目前有效,但我宁愿在切换项目时有一些淡入淡出效果.这可能吗?

这是一个jsfiddle,如果这有帮助的话.谢谢!

我的代码:

HTML

<body>
  <div id="proj_name"></div>
  <div id="proj_description"></div>
  <img id="proj_img" src=""><br>
  <button id="proj_switcher">Next Project</button>
</body>
Run Code Online (Sandbox Code Playgroud)

JavaScript的

/**
 * Constructor function for Projects
 */
function Project(name, description, img) {
  this.name = name;
  this.description = description;
  this.img = img;
}

// An array containing all the projects with their information
var projects = [
  new Project('Project 1', 'Project 1 Description', 'http://bit.ly/1E0IzpX'),
  new Project('Project 2', 'Project 2 Description', 'http://bit.ly/1FHLGOt'),
  new Project('Project 3', 'Project 3 Description', 'http://bit.ly/1H5wRt7'),
  new Project('Project 4', 'Project 4 …
Run Code Online (Sandbox Code Playgroud)

html javascript transition

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

在ES6 Map上使用for..of循环

我正在阅读这个for.. of在Map上使用循环的例子,我对这种语法有点困惑:

var myMap = new Map();
myMap.set(0, "zero");
myMap.set(1, "one");

for (var [key, value] of myMap) {
  console.log(key + " = " + value);
}
Run Code Online (Sandbox Code Playgroud)

具体来说,我不明白正在发生的数组解构.我知道你可以使用数组解构来做类似的事情let [one, two] = [1, 2];,但是这个例子中发生了什么?myMap这不是一个数组,为什么这会得到正确的值?

我的另一个问题是为什么是key, value解构中的订单,但是当你执行forEach()订单时value, key,就像这里:

myMap.forEach((value, key) => {
  console.log(key + " = " + value);
});
Run Code Online (Sandbox Code Playgroud)

javascript dictionary ecmascript-6

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