Javascript 我想在vue中加载一个使用flask的post请求,响应是它的路径
我已经在StackOverflow上尝试了许多可用的方法。他们中的大多数要求使用require.context加载所有图像路径,然后使用我从post响应中获得的图像路径 但我的问题在于,我要求用户上传图像,然后将其保存在本地的assets文件夹中,处理图像并将输出保存在assets文件夹中 这个图像名称必须是唯一的,所以我在python中使用uuid.uuid4(),这是完全随机的 require.context无法加载我的图像路径,因为它在编写网页包时不可用,因此出现错误-找不到模块“../assets/9a5d60e2-4c2c-4fd9-a617-5dcdde4db6cc.jpg”Javascript 我想在vue中加载一个使用flask的post请求,响应是它的路径,javascript,html,image,vue.js,vue-component,Javascript,Html,Image,Vue.js,Vue Component,我已经在StackOverflow上尝试了许多可用的方法。他们中的大多数要求使用require.context加载所有图像路径,然后使用我从post响应中获得的图像路径 但我的问题在于,我要求用户上传图像,然后将其保存在本地的assets文件夹中,处理图像并将输出保存在assets文件夹中 这个图像名称必须是唯一的,所以我在python中使用uuid.uuid4(),这是完全随机的 require.context无法加载我的图像路径,因为它在编写网页包时不可用,因此出现错误-找不到模块“../a
<TwentyTwenty
:before="getImgUrl(resp['original'])"
:after="getImgUrl(resp['dreamed'])"
beforeLabel='Orignal'
afterLabel="Dreamed"
keyboardStep=0.01 />
getImgUrl(pet) {
var images = require.context('../assets/', false, /\.jpg$/)
return images('' + pet + ".jpg")
}
getImgUrl(宠物){
var images=require.context(“../assets/”,false,/\.jpg$/)
返回图像(“”+pet+“.jpg”)
}
构建Vue应用程序后,就没有资产
文件夹。您不能要求
/导入捆绑时不存在的任何内容
您应该做的是让您的Python应用程序将上传的图像保存到一个可以通过HTTP访问的位置(例如静态/上传
,或者如您所示,您的Flask应用程序根目录)
然后,您只需使用一个普通的常规URL在Vue应用程序中显示图像,例如
# .env file
VUE_APP_API_BASE=http://localhost:8080
数据:()=>({
apiBase:process.env.VUA\u APP\u API\u BASE,//从.env获取API库URL
响应:{
//随便
}
})
Reply to Phil的答案-我没有静态文件夹,我有src文件夹,其中包含资产、组件、插件、路由器和视图文件夹以及App.vue和main.js文件。我如何找到我的静态等价物folder@piyush是你的Flask应用程序处理上传。它是否也为Vue应用程序提供服务?它当前将上载的文件保存到何处?否我的flask应用程序不支持我的Vue应用程序。它在8080上运行。它将图像保存在我的根文件夹中,该文件夹包含app、virtual environment和run.py文件。@piyus然后您需要从Flask应用程序中提供图像。我已经更新了我的答案