小编Sey*_*eyT的帖子

无法在单个商店内使用 vue-router 和 pinia

我正在使用 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)

javascript vue.js vue-router pinia

24
推荐指数
3
解决办法
3万
查看次数

如何在js文件中的组件之外使用Pinia

我正在从 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)

pinia

12
推荐指数
2
解决办法
1万
查看次数

所有 Laravel 路线均已公开。如何将其移动到 app.js 或缩小(如果可能)

我在 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)

inertiajs laravel vue.js

9
推荐指数
2
解决办法
8837
查看次数

如何在新版本next js 13.2 app dir api路由中使用nextAuth的[...nextauth]动态路由?

目前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

next.js next-auth next.js13

4
推荐指数
2
解决办法
4303
查看次数

Bootstrap-vue 在 b-table 上使用 b-tooltip

我正在使用 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)

api twitter-bootstrap-tooltip vue.js bootstrap-vue

3
推荐指数
1
解决办法
4179
查看次数