Как исправить Эти зависимости не были обнаружены: при развертывании с Netlify, учитывая, что yarn run serve работает на локальном компьютере

Я создаю сайт, используя Vue.js, yarn и Netlify. Когда я запускаю yanr run build на моем локальном компьютере, все идет хорошо. Когда я развертываю Netlify, у меня возникает следующая проблема:

5:17:55 PM: failed during stage 'building site': Build script returned non-zero exit code: 1   
5:17:55 PM: * @/views/SignInFlow/Recover.vue in ./src/router.js  
5:17:55 PM: * @/views/SignInFlow/Request.vue in ./src/router.js  
5:17:55 PM: * @/views/SignInFlow/SignIn.vue in ./src/router.js  

Чтобы решить эту проблему, мы пытаемся:

  1. Очистить кэш
  2. Переустановите node_modules
  3. Запустите yarn install --save @ / views / SignInFlow / Recover.vue в ./src/router.js

Вот как выглядят пути router.js:

import Vue from "vue";
import Router from "vue-router";
import Home from "@/views/Home.vue";
import Team from "@/views/Team.vue";
import SignIn from "@/views/SignInFlow/SignIn.vue";
import Request from "@/views/SignInFlow/Request.vue";
import Recover from "@/views/SignInFlow/Recover.vue";

Ничего не помогает

Пути верны, я уверен на 100%.

Вот что находится внутри SignIn.vue:

<template>
  <div
    class="container"
    :class="{'light-background' : !isDarkMode, 'dark-background' : isDarkMode}"
  >
    <Notification v-if="hasText" :text="text"/>
    <RequestAccount/>
    <div class="login">
      <img src="@/assets/DCHQ.svg" v-show="isDarkMode">
      <img src="@/assets/DCHQ-dark.svg" v-show="!isDarkMode">
      <h4 :class="{'light-text' : isDarkMode, 'dark-text' : !isDarkMode}">Sign into Design+Code HQ</h4>
      <form @submit.prevent="onSubmit">
        <input
          type="email"
          placeholder="Email"
          :class="{'light-field' : isDarkMode, 'dark-field' : !isDarkMode}"
          v-model="email"
          required
        >
        <input
          type="password"
          placeholder="Password"
          :class="{'light-field' : isDarkMode, 'dark-field' : !isDarkMode}"
          v-model="password"
          required
        >
        <button>Sign In</button>
      </form>
      <router-link
        to="/recover"
        :class="{'light-link': isDarkMode, 'dark-link' : !isDarkMode}"
      >Forgot your password?</router-link>
      <ThemeSwitch/>
    </div>
  </div>
</template>

<script>
import RequestAccount from "@/components/RequestAccount";
import ThemeSwitch from "@/components/ThemeSwitch";
import Notification from "@/components/Notification";
import { auth } from "@/main";

export default {
  name: "SignIn",
  components: {
    RequestAccount,
    ThemeSwitch,
    Notification
  },
  data() {
    return {
      email: null,
      password: null,
      hasText: false,
      text: ""
    };
  },
  computed: {
    isDarkMode() {
      return this.$store.getters.isDarkMode;
    }
  },
  methods: {
    onSubmit() {
      const email = this.email;
      const password = this.password;

      auth
        .login(email, password, true)
        .then(response => {
          this.$router.replace("/");
        })
        .catch(error => {
          alert("Error: " + error);
        });
    }
  },
  mounted() {
    const params = this.$route.params;

    if (params.userLoggedOut) {
      this.hasText = true;
      this.text = "You have logged out!";
    } else if (params.userRecoveredAccount) {
      this.hasText = true;
      this.text = `A recovery email has been sent to ${params.email}`;
    } else if (params.userRequestedAccount) {
      this.hasText = true;
      this.text = `Your request has been sent to an administator for ${
        params.email
      }`;
    }
  }
};
</script>

<style scoped lang="scss">
.container {
  display: flex;
  justify-content: center;
  align-items: center;

  min-height: 100vh;
}

.login {
  width: 400px;
  text-align: center;
}
</style>

Я хочу сделать возможным развертывание моего сайта через Netlify, но я не знаю, что еще попробовать, чтобы отладить проблему.


person k-code    schedule 16.04.2019    source источник
comment
Добро пожаловать в Stackoverflow! Спасибо за предоставленный код. Если вы на 100% уверены, что пути верны, как вы думаете, почему вы получаете эту ошибку? Какие сторонние исследования вы провели?   -  person CyanCoding    schedule 16.04.2019


Ответы (1)


Если у вас есть эта проблема, это означает, что после первого развертывания в Netlify вы изменили регистр первой буквы имени папки. Поскольку Netlify запомнил его другим способом, он не узнает новое имя. Поэтому попробуйте заменить: @/views/SignInFlow/YourFile.vue на: @/views/signInFlow/YourFile.vue И то же самое для имени папки.

Если вам нужна причина проблемы, посмотрите здесь: https://docs.netlify.com/configure-builds/troubleshooting-tips/#case-sensitivity

person Benjamin Azoulay    schedule 27.07.2020