Javascript 使用window.axios时,moxios无法正常工作

Javascript 使用window.axios时,moxios无法正常工作,javascript,laravel,vue.js,axios,moxios,Javascript,Laravel,Vue.js,Axios,Moxios,我有一个拉威尔项目。我正在尝试测试vue组件,但它显示错误: 这是我的测试:test.spec.js import { mount } from '@vue/test-utils'; import expect from 'expect'; import moxios from 'moxios'; import Post from '../../resources/js/components/Component.vue'; describe('Component',()=>{

我有一个拉威尔项目。我正在尝试测试vue组件,但它显示错误: 这是我的测试:test.spec.js

import { mount } from '@vue/test-utils';
import expect from 'expect';
import moxios from 'moxios';
import Post from '../../resources/js/components/Component.vue';

describe('Component',()=>{

    let wrapper;

   beforeEach(() => {

        moxios.install();  

        wrapper = mount(Component, {
            propsData: {
                data: {
                    id: 1,
                    name: 'Test'
                    lastname: 'Test
                }
            }
        });

   });

   afterEach(() => {
     moxios.uninstall();
   });

   it.only('updates the profile user after being liked', (done) => {  

      click('button.like');

      moxios.wait(() => {
            let request = moxios.requests.mostRecent()
            request.respondWith({
              status: 200              
            }).then(function () {
              seeText('1 likes')
              done()
            })
        });

   });

   let click = selector => {
        wrapper.find(selector).trigger('click');
   };    

});
这是组件:component.vue

<template>
    <div class="profile">                                                             

       <div>
        {{ name }}
       </div>
              <div>
        {{ lastname}}
       </div> 

       <button class="like" @click="like">Like</button>


    </div>  
</template>

<script>
export default {

  props:['data'],       

        data(){
            return {
                id:this.data.id,
                name: this.data.name,
                lastname :this.data.lastname
                .......

            };
        },

        methods:{

          like(){
                axios.post(`/user/${this.id}/likes`);
                ......

            }

        }

}
</script>
<script>
import axios from 'axios';
.....
</script>
它可以在浏览器上工作

然后我在Component.vue中添加了这个

<template>
    <div class="profile">                                                             

       <div>
        {{ name }}
       </div>
              <div>
        {{ lastname}}
       </div> 

       <button class="like" @click="like">Like</button>


    </div>  
</template>

<script>
export default {

  props:['data'],       

        data(){
            return {
                id:this.data.id,
                name: this.data.name,
                lastname :this.data.lastname
                .......

            };
        },

        methods:{

          like(){
                axios.post(`/user/${this.id}/likes`);
                ......

            }

        }

}
</script>
<script>
import axios from 'axios';
.....
</script>

从“axios”导入axios;
.....

现在我的测试很好。但如果一个服务器删除它,它就会再次失败。我只是想知道为什么会发生这种情况,我不确定是否必须从“axios”添加导入axios在setup.js中将axios添加到每个仅用于测试的组件中。添加axios如下:

require('jsdom-global')();

global.axios = require('axios');