小编use*_*996的帖子

es6模块实现,如何加载json文件

我正在实现https://github.com/moroshko/react-autosuggest的示例

重要的代码是这样的:

import React, { Component } from 'react';
import suburbs from 'json!../suburbs.json';

function getSuggestions(input, callback) {
  const suggestions = suburbs
    .filter(suburbObj => suburbMatchRegex.test(suburbObj.suburb))
    .sort((suburbObj1, suburbObj2) =>
      suburbObj1.suburb.toLowerCase().indexOf(lowercasedInput) -
      suburbObj2.suburb.toLowerCase().indexOf(lowercasedInput)
    )
    .slice(0, 7)
    .map(suburbObj => suburbObj.suburb);

  // 'suggestions' will be an array of strings, e.g.:
  //   ['Mentone', 'Mill Park', 'Mordialloc']

  setTimeout(() => callback(null, suggestions), 300);
}
Run Code Online (Sandbox Code Playgroud)

这个示例中的复制粘贴代码(有效)在我的项目中有错误:

Error: Cannot resolve module 'json' in /home/juanda/redux-pruebas/components
Run Code Online (Sandbox Code Playgroud)

如果我拿出前缀json!:

import suburbs from '../suburbs.json';
Run Code Online (Sandbox Code Playgroud)

这样我在编译时就没有错误(导入完成).但是当我执行它时出错:

Uncaught TypeError: _jsonfilesSuburbsJson2.default.filter is not a function
Run Code Online (Sandbox Code Playgroud)

如果我调试它,我可以看到郊区是一个objectc,而不是一个数组,所以没有定义过滤器功能. …

javascript json reactjs webpack

84
推荐指数
3
解决办法
9万
查看次数

为node.js配置sublime text 3文件夹node_modules

我需要边栏中的node_modules,但搜索文件时不需要"转到文件".

如果我使用

{
  "folder_exclude_patterns": [ "node_modules"]
}
Run Code Online (Sandbox Code Playgroud)

它的工作正常,除了侧边栏.

node.js sublimetext3

15
推荐指数
2
解决办法
8006
查看次数

执行操作时redux出错:未捕获类型错误:无法读取未定义的属性"类型"

刚认真对待React.我想这是一个基本问题,但我无法理解为什么reducer不会被解雇或更新状态:

我的HomeView.js:

     ....
          const { localeChange, counter, locale } = this.props
            return (
               <div>
                  <button onClick={() => increment(7)}>Increment</button>
              <input type='text' value = {counter}/>
               .....
            </div>
        )

    const mapStateToProps = (state) => ({
      locale: state.locale,
      counter: state.counter
    })
    export default connect(mapStateToProps, {localeChange, increment})(HomeView)
Run Code Online (Sandbox Code Playgroud)

我的reducer(同一文件中的常量,动作和减速器):

export const COUNTER_INCREMENT = 'COUNTER_INCREMENT'

export function increment (text) {
  return { type: COUNTER_INCREMENT, text }
}

export default function counterIncrement (state = 0, action) {
  switch (action.type) {
    case 'INCREMENT':
      return state + action.text
    default:
      return …
Run Code Online (Sandbox Code Playgroud)

javascript redux

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

REST API与koa2.多个路由器的公共前缀

我有两个实体,用户和员工.所以我想在不同的端点都使用CRUD,但是它们都将安装在"api"下,所以我可以定义api_v1,api_v2等等.端点将是这样的:

get api/users
put api/users/12
delete api/users/12
get api/employees
....
Run Code Online (Sandbox Code Playgroud)

我的两条路线都无法获得"api"前缀.无法使用koa-mount.

我的文件:

server.js

// Dependencies
import Koa from 'koa'
import mongoose from 'mongoose'
import logger from 'koa-logger'
// import parser from 'koa-bodyparser';
import convert from 'koa-convert'
import serve from 'koa-static'
import Router from 'koa-router'
import session from 'koa-generic-session'
import mount from 'koa-mount'

// A seperate file with my routes.
import routingUsers from './users'
import routingEmployees from './employees'

// config
const config = require("./config/config")

// connect to the database
mongoose.connect(config.mongo.url)
mongoose.connection.on('error', …
Run Code Online (Sandbox Code Playgroud)

koa koa-router koa2

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

来自 material-ui 的样式卡组件

默认情况下 Card 组件具有 box-shadow 样式。如果单击该项目,我想更改框阴影颜色。但是,我什至无法使用样式(无单击事件)更改框阴影颜色。

Card Component 渲染了一个 Paper 元素,这个元素定义了这样的样式:

function getStyles(props, context) {
  const {
    circle,
    rounded,
    transitionEnabled,
    zDepth,
  } = props;

  const {
    baseTheme,
    paper,
  } = context.muiTheme;

  return {
    root: {
      color: paper.color,
      backgroundColor: paper.backgroundColor,
      transition: transitionEnabled && transitions.easeOut(),
      boxSizing: 'border-box',
      fontFamily: baseTheme.fontFamily,
      WebkitTapHighlightColor: 'rgba(0,0,0,0)', // Remove mobile color flashing (deprecated)
      boxShadow: paper.zDepthShadows[zDepth - 1], // No shadow for 0 depth papers
      borderRadius: circle ? '50%' : rounded ? '2px' : '0px',
    },
  };
}
Run Code Online (Sandbox Code Playgroud)

由于纸张使用作为参数发送的样式进行渲染:

<div …
Run Code Online (Sandbox Code Playgroud)

material-ui

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

使用 node-inspector 或 babel-node-debug 调试 es6 转译的代码

当我调试 node rest api 时,我尝试使用 node-inspector

node-inspector

node --debug server.js

这样我就可以使用 localhost:3000/api 调试我的 api...如果我使用 node-debug,就没有办法了。它不会启动端口 3000。

但是我的代码是 ES6,所以在我当前的调试中,我的代码是由 Babel 转译的。

我尝试使用 babel-node-debug 但它似乎也与我使用 node-debug 的情况相同。我可以看到 ES6 代码,但无法通过端口 3000 进行调试。

任何解决方法?

debugging node.js node-inspector node-debugger babeljs

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

docker-compose 卷未安装

我的 docker-compose.yml 是:

version: '2'
services:
  joomla:
    image: joomla
    links:
      - joomladb:mysql
    volumes:
      - "./www:/var/www/html"
    ports:
      - 9010:80
    environment:
      MYSQL_PORT_3306_TCP: 3306
      JOOMLA_DB_HOST: joomladb
      JOOMLA_DB_PASSWORD: "example"
      JOOMLA_DB_USER: "root"
      JOOMLA_DB_NAME: "joomla"

  joomladb:
    image: mysql:5.6
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: "example"
      MYSQL_DATABASE: "joomla"
    volumes:
      - "./db:/var/lib/mysql"
  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    ports:
     - 9011:80
    environment:
      MYSQL_ROOT_PASSWORD: "example"
      MYSQL_DATABASE: "joomla"
    container_name: phpmyadmin
Run Code Online (Sandbox Code Playgroud)

/var/www/html 与所有 joomla 文件一起安装在主机 (dir www) 中。然而,甚至没有创建主机目录 ./db。

但是,如果我进入 db 容器,目录不为空:

root@docker1:/home/juanda/soplaelcierzo# docker exec -t -i 959 /bin/bash
root@95926c23f49a:/# cd /var/lib/mysql/
root@95926c23f49a:/var/lib/mysql# ls
auto.cnf …
Run Code Online (Sandbox Code Playgroud)

docker-compose

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

wordpress中wp_posts中的post_name字段是什么?

我正在将应用程序迁移到wordpress.我们有数千个wordpress帖子,我们将在wordpress数据库中作为custom_types插入.wp_posts中的post_name字段是什么?我们可以有两个具有相同post_name的记录吗?这是友好的网址吗?

wordpress

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

: 和 := 在 bash 参数扩展中

试图理解用 bash 编写的 dockerfile。什么是:为了?

: ${WORDPRESS_DB_USER:=root}
Run Code Online (Sandbox Code Playgroud)

还有 :=?

我从脚本中添加了更多代码以供参考:

#!/bin/bash
set -e

if [ -n "$MYSQL_PORT_3306_TCP" ]; then
    if [ -z "$WORDPRESS_DB_HOST" ]; then
        WORDPRESS_DB_HOST='mysql'
    else
        echo >&2 'warning: both WORDPRESS_DB_HOST and MYSQL_PORT_3306_TCP found'
        echo >&2 "  Connecting to WORDPRESS_DB_HOST ($WORDPRESS_DB_HOST)"
        echo >&2 '  instead of the linked mysql container'
    fi
fi

if [ -z "$WORDPRESS_DB_HOST" ]; then
    echo >&2 'error: missing WORDPRESS_DB_HOST and MYSQL_PORT_3306_TCP environment variables'
    echo >&2 '  Did you forget to --link some_mysql_container:mysql or set an external …
Run Code Online (Sandbox Code Playgroud)

bash dockerfile

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

反应 - material-ui appbar图标触摸事件不会触发

当我单击左侧的元素AppBar图标时,应该执行_handleClick()方法.我无法获得控制台消息.我正在使用material-ui框架,并且为通过触摸选择选择左图标时的回调函数提供了属性onLeftIconButtonTouchTap.

import React, { Component } from 'react'
import { AppBar, IconButton } from 'material-ui'
import MoreVertIcon from 'material-ui/lib/svg-icons/navigation/more-vert';

let injectTapEventPlugin = require("react-tap-event-plugin");

//Needed for onTouchTap
//Can go away when react 1.0 release
//Check this repo:
//https://github.com/zilverline/react-tap-event-plugin
injectTapEventPlugin();


class Header extends Component {
  constructor(props) {
    super(props);
    this._handleClick = this._handleClick.bind(this);
  }

  _handleClick(e) {
    e.preventDefault();
    // Show/Hide the LeftMenu
    window.console.log("Click!");
  }

  render() {
       return (
        <AppBar title="Arasaaccc"
                iconElementLeft={ <IconButton>
                                    <MoreVertIcon/>
                                  </IconButton> }
                onLeftIconButtonTouchTap={ this._handleClick }
                isInitiallyOpen={ true } />


      )
  }
} …
Run Code Online (Sandbox Code Playgroud)

reactjs material-ui

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

从 redux-devtools 更改值后选择框未更改

语言环境处于我的 redux 应用程序状态。通过 react-devtools(还原选项)更改其值,会更改段落内部值,但不会更改选择框值。如果它再次呈现,它不应该采用与 p 标签内部相同的值吗?

import React, {Component, PropTypes} from 'react'
import {defineMessages, injectIntl, intlShape} from 'react-intl'
const messages = defineMessages({
  spanish: {
    id: 'languageSelector.spanish',
    description: 'Select language',
    defaultMessage: 'Spanish'
  },
  english: {
    id: 'languageSelector.english',
    description: 'Select language',
    defaultMessage: 'English'
  },
  french: {
    id: 'languageSelector.french',
    description: 'Select language',
    defaultMessage: 'French'
  }
})

class LanguageSelector extends Component {
    render () {
      const {formatMessage, locale} = this.props.intl
      return (
        <div>
        <select defaultValue={locale} onChange={(e) => this.handleChange(e)}>
                <option id='es' value='es'>{formatMessage(messages.spanish)}</option>
                <option id='fr' value='fr'>{formatMessage(messages.french)}</option> …
Run Code Online (Sandbox Code Playgroud)

redux redux-devtools

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

从 node.js 加载和修改 svg 文件

我们有一个应该发送 png 文件的 API。这个 png 文件由几个 svg 文件和一些属性的变化组成:背景颜色、图像大小..

我们在服务器上使用 node.js。

我尝试使用 d3 来修改 SVG 文件和 Jsdom 以在后端使用 d3,但没有成功:

var fs = require('fs');
var d3 = require('d3');
var JSDOM = require('jsdom').JSDOM;

var outputLocation = 'test.svg';
const window = (new JSDOM(`<html><head></head><body></body></html>`, { pretendToBeVisual: true })).window;

window.d3 = d3.select(window.document); //get d3 into the dom

d3.xml("./react02.svg").mimeType("image/svg+xml").get(function(error, xml) {
    var importedNode = document.importNode(xml.documentElement, true);
    if (error) throw error;
    console.log(xml);
    window.d3.select('body')
    .append('div').attr('class', 'container')
    .appendChild(importedNode);
});
fs.writeFileSync(outputLocation, window.d3.select('.container').html()) //using sync to keep the code simple
Run Code Online (Sandbox Code Playgroud)

但我总是收到一个错误:

TypeError: …
Run Code Online (Sandbox Code Playgroud)

svg node.js d3.js

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