apollo-upload を介して Quasar のアップローダーで画像をアップロードしようとしています。
<q-uploader multiple :url="url" :upload-factory="uploadFactory"/> This is
how I implement the Uploader.
これが uploadFactory 関数です。
uploadFactory (file, updateProgress) {
return(
this.$apollo.mutate({
mutation: gql`
mutation($file: Upload!) {
uploadFile(file: $file) {
filename
}
}
`,
variables: { file: file }
})
)
return new Promise(resolve, reject);
},
そして、サーバー側で私はこれを得ました:
async uploadFile (parent, { file } ) {
const { stream, filename, mimetype, encoding } = await file;
var fs = require('fs');
const id = 1;
const uploadDir = __dirname;
const path = `${uploadDir}/${filename}`
var wstream = fs.createWriteStream(path);
wstream.write(stream);
wstream.end();
return { stream, filename, mimetype, encoding };
},
},
ここまではコードです。新しい画像を入力してアップロード ボタンを押すと、uploadFactory の file.__img に img-src があります。データをサーバーに送信する場合、__img-Object は完全に空です: {}。ファイルを送信しようとしましたが、file.__imgだけで、値をコピーしようとしましたが、毎回空です。
誰かがこれを達成しましたか?それとも可能ですか?
参考までに: クエーサーやアポロについてまだ聞いたことがない場合は、いくつかのリンクを参照してください: クエーサー アップローダー、 アポロ アップロード