我正在使用 pinia 和 vue-router 4.x ,但我在商店中使用它们时遇到问题。每个都独立工作,但不能一起工作。
如果我使用
import router from '../router'
Run Code Online (Sandbox Code Playgroud)
路由器可以工作,但 pinia 失败并出现错误
Uncaught ReferenceError: Cannot access 'useAuthStore' before initialization
at axiosroot.ts
@line let authStore = useAuthStore(pinia);
Run Code Online (Sandbox Code Playgroud)
//这里是axiosroot.ts
import axios from "axios";
import {useAuthStore} from '../stores/auth-store'
import { createPinia } from "pinia";
const pinia=createPinia();
let authStore = useAuthStore(pinia);
const url = "http://127.0.0.1:8000/api";
const myToken =authStore.getToken;
export default axios.create({
url,
headers:{"Accept":"application/json"},
});
Run Code Online (Sandbox Code Playgroud)
当我从 vue-router 导入路由器时useRouter未定义
import {useRouter} from 'vue-router'
const router =useRouter();
Run Code Online (Sandbox Code Playgroud)
错误
Uncaught TypeError: Cannot read properties …Run Code Online (Sandbox Code Playgroud) 我正在从 vue 4.x 迁移到 pinia,我的文件之一需要来自商店的 api 密钥。但即使我遵循Pinia 文档,我也无法使其工作。这是我如何使用 pinia
// 存储库.ts
import axios from "axios";
import { createPinia } from 'pinia'
import { useAuthStore } from '../stores/auth-store'
const pinia=createPinia();
let authStore = useAuthStore(pinia);
const baseURL = 'http://127.0.0.1:5678/res-api';
export default axios.create({
baseURL,
headers:{"Authorization":"Bearer " + authStore.getToken,
"Accept":"application/json"},
});
Run Code Online (Sandbox Code Playgroud)
预期结果:从商店获取令牌。
控制台错误
Uncaught ReferenceError: Cannot access 'useAuthStore' before initialization
at Repository.ts:6:17
Note: this working inside a component
Run Code Online (Sandbox Code Playgroud) 我在 Laravel、Vue.js 和 Inertia js 项目中使用 Ziggy。在查看页面源代码中,我可以清楚地看到所有 Laravel 路由。
<script type="text/javascript">
const Ziggy = {"url":"http:\/\/127.0.0.1:8787","port":8787,"defaults":{},"routes":
......
"sup_finish_tt_order":{"uri":"front\/finishorder","methods":["POST"]},"assign__tt":{"uri":"front\/assigntt","methods":["POST"]},"technicians":{"uri":"technicians","methods":["GET","HEAD"]},"change-password":{"uri":"change-password","methods":["GET","HEAD"]},"reset.password":{"uri":"c
----------
</script>
Run Code Online (Sandbox Code Playgroud)
有没有办法在 app.js 中重新定位这个 Ziggy 对象或使其不那么明显?根据Ziggy文档和此处尝试的答案,我尝试将其导入 app.js,a 但它不起作用。
未捕获的类型错误:无法读取 Object.inherits (app.js:124712) 处未定义的属性“原型”。(app.js:68991) 在 Object../node_modules/irc/lib/irc.js (app.js:69342) 在webpack_require (app.js:64) 在 Object../node_modules/ziggy/index.js ( app.js:140181) 在webpack_require (app.js:64) 在 Module../resources/js/app.js (app.js:141504) 在webpack_require (app.js:64) 在 Object.0 (app.js) js:142081) 在webpack_require (app.js:64)
___________________________设置 ______________________________________
//后端
$ php artisan ziggy:generate
File generated!
Run Code Online (Sandbox Code Playgroud)
// 示例 /resources/js/ziggy.js 文件
const Ziggy = {"url":"http:\/\/127.0.0.1:8787","port":8787,"defaults":{},"routes":{"debugbar.openhandler":{"uri":"_debugbar\/open" /*..... All named routes as …Run Code Online (Sandbox Code Playgroud) 目前pages/api/auth目录下的[\xe2\x80\xa6nextauth].ts文件工作正常。但是,我想迁移到 Next.js 13.2\xe2\x80\x99s 应用程序目录 API 路由,但无法\xe2\x80\x99t 找到迁移我的 nextAuth 路由的方法。我尝试将 /pages/api/auth/[\xe2\x80\xa6nextauth].ts 移动到 app/api/auth/[\xe2\x80\xa6nextauth].ts 但它\xe2\x80\x99s 不起作用。
\n我正在使用 bootstrap-vue 在 b-table 上显示我的数据,我截断了长文本,并使用 title prop 将鼠标悬停在其上时显示原始文本。它与客户 css 配合得很好,但我想使用 b-tooltip
<b-table hover sticky-header outlined
show-empty
small
stacked="md"
:items="apiitems"
:fields="fields"
:current-page="currentPage"
:per-page="perPage"
:filter="filter"
:filterIncludedFields="filterOn"
:sort-by.sync="sortBy"
:sort-desc.sync="sortDesc"
:sort-direction="sortDirection"
@filtered="onFiltered">
<template v-slot:cell()="data">
<span :title='data.value'>{{ data.value}}</span>
</template>
</b-table>
Run Code Online (Sandbox Code Playgroud)
fields: [
{ key: 'actions', label: 'Actions' , class: 'truncate1'},
{key: 'key3', label: 'label 3' , sortable: true, class: 'truncate1'},
{key: 'key4', label: 'lable 4' , sortable: true, class: 'truncate1'},
{key: 'keyn', label: 'lable n' , sortable: true, class: 'truncate1'},
],
Run Code Online (Sandbox Code Playgroud)
<style>
.truncate1 {
max-width: …Run Code Online (Sandbox Code Playgroud) vue.js ×3
pinia ×2
api ×1
inertiajs ×1
javascript ×1
laravel ×1
next-auth ×1
next.js ×1
next.js13 ×1
vue-router ×1