如何从外部 src 目录导入模块?
./src/App.js
Module not found: Can't resolve 'material-ui' in '/Users/suvo/GitHub/portfolio/src'
Run Code Online (Sandbox Code Playgroud)
根据react-material-icons页面,我应该按如下方式导入:
import mui from 'material-ui';
Run Code Online (Sandbox Code Playgroud)
错误很奇怪。我就import $ from 'jquery';在旁边import mui...,它工作正常。更重要的是,如果我创建一个新项目并添加 react-material-icons,npm 将无法启动,并显示错误:
> myapp@0.1.0 start /Users/suvo/GitHub/myapp
> react-scripts start
sh: react-scripts: command not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! myapp@0.1.0 start: `react-scripts start`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the myapp@0.1.0 start script.
npm ERR! …Run Code Online (Sandbox Code Playgroud) 我已经在我的 vue.js 应用程序中安装了 vite。我通过在主项目目录中输入 npm run dev 来启动应用程序。在 package.json 中定义为:
"dev": "vite"
Run Code Online (Sandbox Code Playgroud)
但如果我尝试从主目录“手动”运行此命令(或例如 vite build),则会收到错误:
bash: vite: command not found
Run Code Online (Sandbox Code Playgroud)
我还发现,当我设置新脚本时:
"build": "vite build"
Run Code Online (Sandbox Code Playgroud)
我也可以运行此命令,尽管再次手动运行它会导致如上所述的错误。
这对我来说似乎很不合逻辑。有人能解释一下这怎么可能吗?
/api/show.js
export default defineEventHandler(async (event) => {
const cookie = getCookie(event, 'jwt')
console.log("cookie: " + cookie);
return { cookie: cookie }
})
Run Code Online (Sandbox Code Playgroud)
当我在浏览器中访问时,http://localhost:3000/api/show我可以在屏幕上看到正确的值,并且可以看到从服务器记录到控制台的正确值。
但是当我尝试在我的应用程序中使用它时,如下所示:
<script setup>
const { data } = await useFetch('/api/show')
console.log(data.value.cookie);
</script>
Run Code Online (Sandbox Code Playgroud)
然后两个控制台日志(服务器上的控制台日志和客户端上的控制台日志)都显示未定义。
这背后的逻辑是什么?
如何在 Nuxt3 中正确获取服务器上的 cookie 值?