にアクセスしてください。タイトルが明確であるかどうかわかりませんが、メテオアプリではファイルをアップロードするツールを持っていますその後MongoDBにdataURLを保存してローカルURL(JS)
export const addFile = (nameArg: String, dataURL: String) => {
Files.insert({
_id: uuid(),
name: nameArg,
url: dataURL
});
console.log("file "+nameArg+" added");
};
:
export const Files = new Mongo.Collection('files');
とADDFILE機能:私はMongoDBに、と私は例のためにそれを使用することができURLはまだ のSRCとして表示するための出力は、私は自分のコレクションを作成しますreact-jsonschema-form
パッケージを使用してファイル形式を表示します
<Form
schema={{
type: 'object',
properties: {
file: {
type: 'string',
title: 'Upload an image to get its URI'
}
}
}}
uiSchema={{
file: {
'ui:widget': 'file'
}
}}
onChange={this.onChange}
liveValidate
>
<div />
</Form>
私のonChange機能:
onChange = (e: { formData: { file: string } }) =>{
const [dataType, nameBis,] = e.formData.file.split(';');
const name = nameBis.split('=')[1];
Promise.resolve().then(addFile(name, e.formData.file));
}
そして、私はこの画像を使用できるようにwindow.location.host+'/file/'+name
としてアドレスsushを使用したいと思います。 私はそれが可能であると信じていますが、どうですか?すべての応答のための
感謝:)
私のコードでは、すでにbase64のdataURLとしてフルイメージを持っているので、ちょうど小さなfsに格納したいと思います。私はcfs:* docsを見てきました。私はフォームを.jsxファイルのreact.componentとして定義しているので、挿入するステップに問題があります。そのため、onChange関数のデータはevent.formDataに含まれています.fileをbase64として使用します。 –
あなたは反応しているか火花を使っているかは関係ありません。そのファイルを 'FS.File'インスタンスに割り当て、このインスタンスをFileコレクションに割り当てれば完了です。それは簡単です。 –
問題は解決しました。 '.url()'はうまくいかず、cfs:filesystemがアップロードされたファイルを置く方法のために 'window.location.origin + '/ cfs/files/uploads /' + fileObj._id'。ありがとう –