简体   繁体   English

将 Material-ui 与 Electron 结合使用

[英]Using Material-ui with Electron

I am building out an electron app with React and trying to use Material-UI for the UI elements.我正在使用 React 构建一个电子应用程序,并尝试将 Material-UI 用于 UI 元素。 I added a datepicker and timepicker to a component and the input shows up in the electron app, however when you click on it, nothing happens.我在一个组件中添加了一个日期选择器和时间选择器,输入显示在电子应用程序中,但是当你点击它时,没有任何反应。 Not sure what I'm missing in order to get this to work correctly不确定我缺少什么才能使其正常工作

Component :成分 :

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 :索引.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 });

In your app.js, you need to import and execute the following plugin:在您的 app.js 中,您需要导入并执行以下插件:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM