我正在使用Material-UI和 React创建一个可编辑的文本字段。
我遇到的问题是一切正常,除了我无法点击编辑图标(它变成闪烁)
我正在分享我已经做过的事情:https : //codesandbox.io/s/jny3704v63
我知道问题的根源,但我不知道如何解决!问题是,当您mouseover编辑图标时,我们处于mouseout文本字段的事件中,并且该handleMouseOut功能将被执行。
您可以通过评论内容来检查,handleMouseOut但是当您离开文本字段时图标不会消失!
任何的想法 ?
我正在使用React和axios从 API 获取数据。一切都工作正常,直到由于某种原因,我需要拦截响应,在这种情况下,我的表单数据不再发送。
对于所有经典案例,我正在做这样的事情:
const formData = new FormData();
formData.append('param1', 'value1');
formData.append('param2', 'value2');
formData.append('param3', 'value3');
axios({
//...
data: formData
})
Run Code Online (Sandbox Code Playgroud)
所以我可以在请求调用中看到:
为了使用拦截器,我尝试不更改上面的配置,如下所示:
const instance = axios.create({
//...
data: formData
});
instance.interceptors.response.use((response) => {
//...
}, (error) => {
//...
});
instance.request();
Run Code Online (Sandbox Code Playgroud)
但表单数据未在请求标头中发送:
我的第二次尝试是使用qs解析和字符串化库,但我得到了相同的结果
const instance = axios.create({
//...
data: qs.stringify({
param1: 'value1',
param2: 'value2',
param3: 'value3'
})
});
instance.interceptors.response.use((response) => {
//handle success
}, (error) => {
//handle error
});
instance.request();
Run Code Online (Sandbox Code Playgroud)
formData我的第三次尝试是在发送请求之前通过修改配置(add)来添加请求拦截器,但我从未访问回调函数(console.log() …
我知道那样做
<script language="javascript" src="script.js">
Run Code Online (Sandbox Code Playgroud)
要么
<script src="script.js">
Run Code Online (Sandbox Code Playgroud)
是相同的.我只想了解是否有必要 添加language ="javascript"的情况?
代码是否在闭包之下?为什么?
var getContact = (function(){
var person = {name: "John Doe"};
return {aFriend: person};
})();
console.log(getContact.aFriend.name);
//outputs: John DoeRun Code Online (Sandbox Code Playgroud)