javascript - 将 Material-ui 与 Electron 结合使用

标签 javascript node.js reactjs electron material-ui

我正在使用 React 构建一个 Electron 应用程序,并尝试使用 Material-UI 作为 UI 元素。我向组件添加了日期选择器和时间选择器,并且输入显示在 Electron 应用程序中,但是当您单击它时,什么也没有发生。不确定我缺少什么才能使其正常工作

组件:

import React, { Component } from 'react';
import DatePicker from 'material-ui/DatePicker';
import TimePicker from 'material-ui/TimePicker';

export default class Schedule extends Component {
  render() {
    return (
      <div>
        Pick a date :
        <DatePicker id="date"/>
        and time :
        <TimePicker id="time"/>
      </div>
    )
  }
}

index.js:

import 'babel-polyfill'; // generators
import React from 'react';
import { render as renderReact } from 'react-dom';
import debounce from 'debounce';
import configureStore from './store/configureStore';
import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';
import injectTapEventPlugin from 'react-tap-event-plugin';

injectTapEventPlugin();

const state = JSON.parse(localStorage.getItem('state'));
const store = configureStore(state || {});

let App = require('./components/app').default;
const render = (Component) => {
  renderReact(<MuiThemeProvider><Component {...store} /></MuiThemeProvider>, document.getElementById('root'));
};

if (module.hot) {
  module.hot.accept('./components/app', function() {
    let newApp = require('./components/app').default;
    render(newApp);
  });
}

const saveState = debounce(() => {
  localStorage.setItem('state', JSON.stringify(store.getState()));
}, 1000);
store.subscribe(() => {
  saveState();
  render(App);
  if (process.env.ENV === 'development') {
    console.log('state', store.getState());
  }
});
store.dispatch({ type: 'APP_INIT', store });

最佳答案

在你的app.js中,你需要导入并执行以下插件:

const injectTapEventPlugin = require('react-tap-event-plugin');
injectTapEventPlugin();

关于javascript - 将 Material-ui 与 Electron 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39880875/

相关文章:

node.js - 如何删除node.js中的exif数据

javascript - 如何更改then()勺 Node js中的变量内容

node.js - .\node_modules\instagram-private-api\dist\repositories\request.js : crypto could not be found within the project

javascript - 将元素添加到顶部时保持滚动位置

javascript - 像配置函数一样在事件处理程序中获取组件

javascript - 监控页面上的http请求头

javascript - 为什么 Javascript Date.now() 返回错误的日期?

node.js - 具有 2 个集合的 Mongodb 聚合

javascript - react 。尝试从 onClick 事件调用自定义 Hook

javascript - 如何在 Google Chrome 中自定义全局媒体控件(问题与解答)