我在Ubuntu上使用了Tauri JS。我想读取一个csv文件,它在项目目录中。
/data/example.csv
/src-tauri/
/src
...我激活了fs模块,尝试了不同的模式
"all": true,
"fs": {
"scope": {
"allow": ["$APP/**", "$APP/db/**", "$APP/data/**" ,"$DOWNLOAD/**", "$RESOURCE/**", "/data/**", "data/**"]
}
},但是,当我试图用以下代码阅读时:
import { readTextFile } from "@tauri-apps/api/fs";
let filePath = "./data/example.csv";
console.log("File path:", filePath)
const promise = readTextFile(filePath);
promise.then((response) => {
console.log(response);
}).catch((error) => {
console.error(error);
})我总是收到以下错误:
配置的作用域不允许错误路径:./data/profiles.csv
发布于 2022-07-21 15:32:53
这个对我有用。当您调用dir: path时,需要一个额外的readTextFile选项。我将它与Tauri - BaseDirectory一起使用,并继续使用相对路径。也许它也适用于一个文件。
export const readFile2 = async() => {
let filePath = "data\\example.csv";
let appPath = BaseDirectory.App;
console.log("File path:", filePath);
const promise = readTextFile(filePath, {
dir: appPath,
});
promise
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
};
为了完整起见,我的tauri.conf.json内容:
...
"tauri": {
"allowlist": {
"fs": {
"all": true,
"scope": [
"$APP/*",
"$DESKTOP/*"
]
}
},
...
如果您将文件替换为错误的"notThere.txt“文件,则错误将显示它正在查找的控制台中的路径。我也有同样的问题。您可以用(ctrl+shift+i)或右键单击tauri应用程序中的控制台。
对于其他试图让它工作的人:您需要将tauri添加到您的项目:yarn add -D @tauri-apps/api中。
博客的一篇文章对我有很大的帮助。他应用了与Tauri不同的方法,比如读/写文件,或者用Tauri创建一个目录。
发布于 2022-07-23 06:00:31
写这个
import { resourceDir } from '@tauri-apps/api/path';
const resourceDirPath = await resourceDir();
console.log(resourceDirPath)$ npm run tauri dev
控制台日志显示
yourApp\src-tauri\target\debug
$ npm运行tauri构建
控制台日志显示
yourApp\src-tauri\target\release
https://tauri.app/v1/api/js/modules/path/#resourcedir
把这个设置忘了
"fs": {
"all": true,
"scope": [
"$RESOURCE/*"
]
},https://stackoverflow.com/questions/72322892
复制相似问题