这基本上都是我的代码.我正在运行Hapi并尝试使用react-loadable来服务器渲染我的React应用程序.
我在这里为代码添加了很多缺失的部分.
const location = req.url.pathname
const context = {}
const modules = []
const Router = () => (
<Switch>
<Route exact path="/" component={Home} />
<Route path="/login" component={Login} />
<Route path="/me" component={Profile} />
<Route component={NotFound} />
</Switch>
)
const App = () => (
<StaticRouter location={location} context={context}>
<main>
<Header />
<Router />
<Footer />
</main>
</StaticRouter>
)
const preloadables = [ Home, Login, Profile, NotFound ]
await Promise.all(preloadables.map(preloadable => preloadable.preload()))
const html = ReactDOMServer.renderToString(
<Loadable.Capture report={moduleName => …Run Code Online (Sandbox Code Playgroud) 这是我的生产webpack配置.标题中的两个引号分别表示webpack2和webpack.两者都有类似的错误.
这是我触发构建的命令
set NODE_ENV=production && webpack --config config/webpack.config.prod.js --progress --display-error-details
我错过了什么?
以下是运行后的输出,npm run pack它与我的生产webpack构建相关:
$ npm run pack
> somedir@ pack C:\somedir
> set NODE_ENV=production && webpack --config config/webpack.config.prod.js --progress --display-error-details
95% emitting
Run Code Online (Sandbox Code Playgroud) 当我对组件进行更改时,webpack 会重新编译并响应热交换模块。但是现在我的代码运行n次数n是热模块交换发生的次数。例如,我进行了更改,现在函数运行了两次。我做了另一个更改,函数运行了 3 次。我可以console.log(Date.now())在我的商店的 dispatchToken 中放置一个,我可以看到它是运行n时间。
商店:http : //pastebin.com/PVnyf572
webpack.config.js:http ://pastebin.com/MsziqH9v
我运行 webpack-dev-server webpack-dev-server app/client.js --inline --hot --colors
当我进行复杂的更改时,我经常收到以下错误消息(尽管如果我更改 Store 的第 60 行以将健康状况增加 10 而不是 6,则不会发生这种情况):
React Hot Loader 似乎没有正确配置。如果您使用 NPM,请确保您的依赖项不会将重复的 React 分发拖到它们的 node_modules 中,并且 require("react") 对应于您渲染应用程序的 React 实例。如果您使用的是 React 的预编译版本,请参阅https://github.com/gaearon/react-hot-loader/tree/master/docs#usage-with-external-react以获取集成说明。
javascript node.js reactjs webpack-dev-server react-hot-loader
在使用babel的类上使用箭头函数进行转换,以便在构造函数中绑定定义.因此它不在原型中,并且super在继承时不可用.通过创建许多实例进行缩放时,它也不那么有效.
关于这个主题有更多的博客文章,但我只是想知道在使用babel时,与箭头函数相比,mobx.action.bound的处理方式有何不同.
比较两者:
class Example {
test = () => {
console.log(this.message)
}
}
class Example {
@action.bound
test() {
console.log(this.message)
}
}
Run Code Online (Sandbox Code Playgroud) 我创建了一个 PIL 图像,我想通过请求将它发送到服务器。
我的代码看起来像这样,但我无法让它工作,因为我没有错误。
import requests
from PIL import Image
from io import BytesIO
img = Image.new('RGB', (25, 25), color = (120, 120, 20))
byte_io = BytesIO()
img.save(byte_io, 'png')
byte_io.seek(0)
requests.post(
url('/media/upload'),
files={
'files[]': (
'1.png',
byte_io,
'multipart/form-data'
)
},
)
Run Code Online (Sandbox Code Playgroud)
print files给我{'files[]': ('1.png', <_io.BytesIO object at 0x105b69290>, 'multipart/form-data')},它不会出错。
type Scales = 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl'
type TScale = { [k in Scales]: number }
type TSizing1 = { [k in Scales]?: string }
type TSizing2 = { [k in Scales]: string }
const scale: TScale = {
xxs: 1 / 8,
xs: 1 / 4,
s: 1 / 2,
m: 1,
l: 2,
xl: 4,
xxl: 8,
}
const sizing1: TSizing1 = {}
Object.entries(scale).forEach(([key, value]: [string, number]) => { …Run Code Online (Sandbox Code Playgroud) 使用此 Procfile 启动我的 Node.js Heroku 应用程序后:
web: node www/main.js
Run Code Online (Sandbox Code Playgroud)
我曾经得到:
错误 R10(启动超时)-> Web 进程未能在启动后 60 秒内绑定到 $PORT
所以我已经将我的 Procfile 更改为通用命令来解决这个问题,从这里开始,使用:
start: node www/main.js
Run Code Online (Sandbox Code Playgroud)
而且我仍然在 60 秒后关机。这是现在的错误:
2015-01-20T13:04:01.452819+00:00 heroku[worker.1]:状态从 up 变为开始 2015-01-20T13:04:02.728905+00:00 heroku[worker.1]:状态从开始改变到 2015-01-20T13:04:03.434251+00:00 heroku[worker.1]:用命令启动进程
node www/main.js2015-01-20T13:04:03.874370+00:00 heroku[worker.1]: 用 SIGTERM 停止所有进程 2015-01-20T13:04:05.188100+00:00 heroku[worker.1]: 进程退出状态为 143 2015-01-20T13:04:05.930916+00:00 app[worker.1]: [2015 年 1 月 20 日星期二 13:04:05 GMT+0000 (UTC)] 信息连接... 2015-01-20T13:04: 06.837197+00:00 app[worker.1]:欢迎使用 Slack。你是 2015-01-20T13:04:06.837559+00:00 app[worker.1] 的@derpy:你在:#general 2015-01-20T13:04:06.837637+00:00 app[worker.1] : 以及: 2015-01-20T13:04:06.837739+00:00 app[worker.1]: 你有 13 条未读消息 2015-01-20T13:04:07.526373+00:00 heroku[worker.1]:错误 R12(退出超时)-> 至少有一个进程未能在 SIGTERM …
我正在将ReactJS视为我的应用程序中的视图,它具有模型和一组组件.我可以看到我的模型如何与React交谈,但React如何与我的应用程序的其余部分交谈?
将数据或模型传入React非常简单:
var ui = ReactDOM.render(<UI model={model} />, document.getElementById('ui'));
Run Code Online (Sandbox Code Playgroud)
我假设您可以像这样设置模型:
constructor(props) {
super(props);
this.state = {
model: this.props.model
}
}
Run Code Online (Sandbox Code Playgroud)
虽然state根据文件应视为不可变,因为它不会立即更新.所以我无法访问我的模型state,我在这里有一个非常糟糕的编写器示例,显示我是如何使它以错误的方式工作的.我怎么能这样做?
我正在运行一个 shell 脚本,~/folder1/并且我想npm install在 中触发~/folder2/。是否有可能做到这一点?
javascript ×4
node.js ×4
ecmascript-6 ×2
reactjs ×2
webpack ×2
babeljs ×1
bash ×1
heroku ×1
html5 ×1
mobx ×1
npm ×1
npm-install ×1
python ×1
react-dom ×1
shell ×1
typescript ×1
webpack-2 ×1