如何在我的React JS应用程序中显示常规javascript?
我试图允许用户在常规javascript中使用input和FileReader()将歌曲下载到音频播放列表,但不显示任何内容。我已经用常规Javascript编写了大部分代码,我觉得可能很难将其转换成所有的代码如何在我的React JS应用程序中显示常规javascript?,javascript,reactjs,Javascript,Reactjs,我试图允许用户在常规javascript中使用input和FileReader()将歌曲下载到音频播放列表,但不显示任何内容。我已经用常规Javascript编写了大部分代码,我觉得可能很难将其转换成所有的代码 从“React”导入React; 进口{ 链接 }从“反应路由器dom”; 从“jquery”导入$; var下载=(道具)=>{ 函数其他(){ log(“它正在工作”); var输入=document.createElement(“输入”); input.id=“上传文件”; in
从“React”导入React;
进口{
链接
}从“反应路由器dom”;
从“jquery”导入$;
var下载=(道具)=>{
函数其他(){
log(“它正在工作”);
var输入=document.createElement(“输入”);
input.id=“上传文件”;
input.type=“文件”;
input.multiple=true;
var cloneInput=input.cloneNode(true);
cloneInput.id=“cloneInput”;
var destinationDiv=document.createElement(“div”);
destinationDiv.id=“目的地”;
var destination=document.getElementById('destination');
destinationDiv.innerHTML=“目的地”;
var appendInput=document.body.appendChild(输入);
如果(追加输入){
控制台日志(“yay”);
}
文件.正文.附件(目的IV);
var inputId=document.getElementById('upload-file');
如果(输入){
inputId.addEventListener('change',function(){
var文件;
var destination=document.getElementById('destination');
var AudioReadyUsed=真;
var ulAlreadyAdded=真;
var alreadyUsed=真;
//在他们上传多个文件的情况下循环
对于(var x=0,xlen=this.files.length;x{
//自动播放开始了!
//显示正在播放的用户界面。
//我们现在可以安全地暂停视频。。。
audio.pause();
})
.catch(错误=>{
//自动播放被阻止
//显示暂停的用户界面。
});
}
};
};
reader.readAsDataURL(文件);
};
}
});
};
};
返回({
其他()
})
};
导出默认下载代码>尽管这个问题的主体似乎偏离了标题,但我将在标题中解决这个问题:如何将javascript文件导入我的react组件?
答案很简单。我选择创建以下目录结构:
/dummyDir
/dummyDir/react src/
/dummyDir/react src/src
这些都可以在reactjs.org中看到。然后,所有react/javascript特定的代码将进入../src/
。因此,您将拥有/dummyDir/react src/src/myJSFile.js
还有两个步骤。下一步是确保将javascript和任何类(假设您执行了一些oop)导入到.jsx
文件中。现在,您可以调用旧java中的任何方法
deploy () {
if [ ! -d build/ ]
then
echo -e "ERROR:\n\tDoes not appear to be correct directory;"
echo -e "\tDir /build/ not found;"
return 1
fi
echo -e "STARTING:"
# Testing if build failed...
npm run build
if [ ! $? -eq 0 ] ;
then
printf "\nnpm run build has failed...\n"
printf "\npreserving previous ./build/\n"
return 2
fi
if [ -d ../static/ ]
then
echo -e "\tREMOVING ../static/*"
rm -r ./../static/ || echo "\tWARNING: DID NOT REMOVE DIR"
else
echo -e "\tDID NOT FIND ../static/ FOR REMOVAL"
fi
# Redirecting the ls output to make it completely silent
if ls ../precache-manifest* 1> /dev/null 2>&1;
then
echo -e "\tREMOVING ../precach*"
rm -r ./../precache-manifest* || echo "\tWARNING: DID NOT REMOVE CACHE"
else
echo -e "\tDID NOT FIND ../static/ FOR REMOVAL"
fi
echo -e "\tRUNNING: npm run build"
echo -e "\tCOPYING OVER NEW BUILD DIR"
cp -r build/* ../
echo -e "DONE"
return 0 #Bash is weird; 0 is true, 1 is false;
}