我很难让npm命令工作,不幸的是我对unix的了解并不足以解决这个问题.我所做的就是brew install node,我得到以下错误:
当我输入时,npm我得到了zsh: command not found: npm
仔细研究这个问题,我发现这个堆栈溢出答案:
根据它的建议,我尝试添加export PATH=/usr/local/share/npm/bin:$PATH到我的.zshrc文件中.键入时仍然会出现相同的错误npm
我可以确认它是在路径echo $PATH收益率/Users/nicholashaley/.rbenv/shims:/Users/nicholashaley/.rbenv/bin:/Applications/Postgres.app/Contents/Versions/9.3/bin:/usr/local/heroku/bin:/usr/local/share/npm/bin:/usr/local/bin:/Applications/Postgres.app/Contents/Versions/9.3/bin:/usr/local/heroku/bin:/Users/nicholashaley/.rbenv/shims:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
我也可以确认节点已经安装了node -v产量v0.12.2
有任何想法吗?我很难过
我一直无法找到明确的答案,希望这不是重复的.
我使用React + Redux作为一个简单的聊天应用程序.该应用程序由InputBar,MessageList和Container组件组成.Container(如您所想)包装其他两个组件并连接到商店.我的消息的状态以及当前消息(用户当前正在键入的消息)保存在Redux存储中.简化结构:
class ContainerComponent extends Component {
...
render() {
return (
<div id="message-container">
<MessageList
messages={this.props.messages}
/>
<InputBar
currentMessage={this.props.currentMessage}
updateMessage={this.props.updateMessage}
onSubmit={this.props.addMessage}
/>
</div>
);
}
}
Run Code Online (Sandbox Code Playgroud)
更新当前消息时出现的问题.更新当前消息会触发更新存储的操作,该操作会更新通过容器并返回到InputBar组件的props.
这是有效的,但副作用是每次发生这种情况时我的MessageList组件都会被重新渲染.MessageList没有收到当前消息,也没有任何更新的理由.这是一个很大的问题,因为一旦MessageList变大,每次当前消息更新时应用程序都会变得明显变慢.
我已经尝试直接在InputBar组件中设置和更新当前消息状态(因此完全忽略了Redux架构)并"修复"了问题,但是如果可能的话我想坚持使用Redux设计模式.
我的问题是:
如果更新了父组件,React是否始终更新该组件中的所有直接子组件?
这里的正确方法是什么?
我目前正在使用Github页面来托管我的个人网站.今天晚上,当我参与这个项目时,我在某个时候尝试推动我的更改,但是收到了Github发来的电子邮件说:
页面生成失败,出现以下错误:无法同步页面目录
我还检查了托管页面,确定没有任何更改被推送过.对于为什么会这样,我感到非常困惑.我的大多数更改都是在我的样式表中进行的,尽管我确实删除了一个它可能不喜欢的文件夹.在今天之前,GH页面表现非常出色.我迫切需要对这个网站进行更改,所以如果有人有任何建议我真的很感激!
我对这个问题有点新意,很抱歉,如果这是一个明显的问题.我正在为Heroku上的客户建立一个网站.客户端以前在HostGator上托管了旧网站.域名是从GoDaddy购买的.客户端有一个自定义电子邮件域(例如@ client.ca).今天我将新的网站域名从HostGator转移到了Heroku,除了电子邮件之外,一切似乎都运行良好."@ client.ca"电子邮件不再有效.根据我收集的内容,我必须将Heroku指向Host Gator IP地址,以便电子邮件正常工作.我不确定如何做到这一点.有人有解决方案吗?谢谢!
为了给我的问题一些背景,我有12个兄弟div,每个代表一年中的一个月.可以在给定时间选择这些div中的0,1或2.选中后,会将一个"有效"类应用于该div.当选择两个div时,我想将样式应用于所选的两个div之间的所有div.
例如.
<div class="month">Jan</div>
<div class="month active">Feb</div>
<div class="month">Mar</div>
<div class="month">Apr</div>
<div class="month">May</div>
<div class="month">Jun</div>
<div class="month active">Jul</div>
<div class="month">Aug</div>
<div class="month">Sep</div>
<div class="month">Oct</div>
<div class="month">Nov</div>
<div class="month">Dec</div>Run Code Online (Sandbox Code Playgroud)
因此,在上面的代码片段中,我想将CSS样式应用于活动月份,以及介于两者之间的所有月份.这在CSS中是否可行,或者我最好使用JS?
编辑:
这不起作用,但我认为它可能在正确的轨道上.
.month.active ~ .month {
background-color: $color-lighter-text;
color: #fff;
}
.month.active:nth-child(2) ~ .month {
background-color: #fff !important;
color: $color-muted-text !important;
}
Run Code Online (Sandbox Code Playgroud) 这里是Redux的新手,真的只是寻找"最佳实践"的答案.
我正在使用React + Redux构建聊天应用程序.我的应用程序看起来像这样:
到现在为止还挺好.一切都运行良好,但我不确定在这个序列中我应该如何/在哪里进行DOM操作.具体来说,message-list每当我的消息发生变化时,我都想滚动到容器的底部.
我需要解雇的是:messagesListElement.scrollTop = messagesListElement.scrollHeight;但不确定适当的地方在哪里.
我正在建立一个使用HTML5拖放的可排序列表。它运作良好,但是当涉及到幻影图像时,我遇到了一个令人沮丧的问题。鬼影始终希望飞回其原始位置。结果是,如果列表项更改位置,则幻影图像将飞回错误的列表项。
理想情况下,在onDragEnd事件之后根本不应该显示幻影图像。我尝试将图像设置为dragEnd上的空图像
handleDragEnd(e) {
e.dataTransfer.setDragImage(new Image(0, 0), 0, 0);
...
Run Code Online (Sandbox Code Playgroud)
但我认为您只能setDragImage在中使用onDragStart。
有没有办法隐藏鬼影onDragEnd,或者至少可以使它飞回正确的位置?
我有以下情况:
/v1.0.0
index.html
main.js
/v1.1.0
index.html
main.js
Run Code Online (Sandbox Code Playgroud)
我正在将 S3 与 Cloudfront 结合使用,并且一切正常,但客户端路由已损坏。这就是说我能够访问每个应用程序的根目录,即。https://<app>.cloudfront.net/<version>,但无法到达任何客户端路由。
我知道可以将错误文档设置为重定向到index.html,但我相信此解决方案仅在每个存储桶都有一个时才有效index.html(即,我无法为每个基于路由的路径设置错误文档)。
解决这个问题的最佳方法是什么?
amazon-s3 amazon-web-services amazon-cloudfront single-page-application react-router
我正在一个项目中使用 Typescript、Lerna 和 monorepos。我有以下项目结构:
tsconfig.json
packages/
project/
tsconfig.json
...
...
Run Code Online (Sandbox Code Playgroud)
我的根tsconfig.json看起来像这样:
{
"compilerOptions": {
"baseUrl": ".",
"declaration": true,
"declarationMap": true,
"sourceMap": true,
"skipLibCheck": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "node",
"target": "es5",
"composite": true,
"strictPropertyInitialization": false
}
}
Run Code Online (Sandbox Code Playgroud)
嵌套project tsconfig.json看起来像这样:
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "dist",
"rootDir": "src",
"jsx": "react",
"baseUrl": "./",
"paths": {
"pages/*": ["./src/pages/*"],
"hooks/*": ["./src/hooks/*"],
"assets/*": ["./src/assets/*"],
"styles/*": ["./src/styles/*"],
"context/*": ["./src/context/*"],
"components/*": ["./src/components/*"],
}
},
"include": ["./src/**/*", "global.d.ts"],
"exclude": ["node_modules", "dist"]
} …Run Code Online (Sandbox Code Playgroud) 我正在使用Redux +中间件创建聊天应用程序,并且希望在ADD_MESSAGE分派动作时使用中间件将对象存储在本地存储对象中:
export function storageMiddleware(store) {
return next => action => {
const result = next(action);
if (action.type === "ADD_MESSAGE") {
// Add to my storage object here
}
return result;
};
Run Code Online (Sandbox Code Playgroud)
}
如果像这样应用我的中间件:
const store = createStore(
reducer,
applyMiddleware(thunk, chatMiddleware)
)
Run Code Online (Sandbox Code Playgroud)
我想传递存储对象,storage但是在文档中找不到任何如何传递附加参数的方法。我怎样才能做到这一点?