【问题标题】:How to include Vuetify in WebStorm project如何在 WebStorm 项目中包含 Vuetify
【发布时间】:2020-07-02 08:00:53
【问题描述】:

我一直在努力解决如何将 Vuetify 包含在使用 WebStorm 创建的默认 Vue.js 项目中。这实际上与在 WebStorm 中设置默认 Vue.js 项目的方式有关,而不是与编辑器本身有关,因为它似乎使用了一种与我能找到的其他方法不同的方法。我收到“Unknown custom element <v-alert>”的错误(例如)。我无法找到有关如何执行此操作的答案,因为 WebStorm 的默认设置与 所有我能找到的方法不同。

我的App.vue文件如下:

<template>
  <div id="app">
    <img alt="Vue logo" src="../../assets/logo.png">
    <HelloWorld msg="Welcome to your Vue.js app"/>
    <v-alert dismissible>Why does this show as an unknown custom element?</v-alert>
  </div>
</template>

<script>
import HelloWorld from './components/HelloWorld.vue'

export default {
  name: 'App',
  components: {
    HelloWorld,
  }
}
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

我的main.js文件如下:

import Vue from 'vue'
import App from './App.vue'
// eslint-disable-next-line no-unused-vars
import Vuetify from "vuetify";

Vue.config.productionTip = false

new Vue({
  render: h => h(App),
}).$mount('#app')

我的 package.json 文件是这样的:

{
  "name": "my-vue-app",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
    "core-js": "^3.6.4",
    "deepmerge": "^4.2.2",
    "sass": "^1.26.3",
    "sass-loader": "^8.0.2",
    "vue": "^2.6.11",
    "vuetify": "^2.2.18"
  },
  "devDependencies": {
    "@vue/cli-plugin-babel": "~4.2.0",
    "@vue/cli-plugin-eslint": "~4.2.0",
    "@vue/cli-service": "~4.2.0",
    "babel-eslint": "^10.0.3",
    "eslint": "^6.7.2",
    "eslint-plugin-vue": "^6.1.2",
    "vue-template-compiler": "^2.6.11"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "babel-eslint"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions"
  ]
}

我运行了npm install vuetify,它似乎运行正确,并且在构建或提供它时我没有收到任何错误。但我不知道如何让我的 Vue 应用导入 Vuetify 组件。

我能找到的所有文档都谈到了直接实例化 Vue 应用程序,我没有这样做,或者如果它谈到单个组件 .vue 文件,那么这些例子都有module.exports,我又没有已经在WebStorm构建的项目中。

我尝试将 Vuetify 添加为 App.vue 的脚本部分中的导入之一,我还尝试将 Vuetify 和 v-alert 设置为 App.vue 文件的组件部分中的组件,但可以要么工作。感谢您的帮助。

【问题讨论】:

  • 为什么这个问题与 WebStorm 相关? (代码编辑器)。如果您的代码错误,您还会在 atom -or-visual code 上遇到错误(或浏览器控制台错误 - 与 Vue 植入和环境以及与 webstorm 无关的软件包相关的错误)。也许从“简单”的 hello-world 示例开始:blog.jetbrains.com/webstorm/2019/03/…。接下来尝试使用 Vuetify CLI - vuetifyjs.com/en/getting-started/quick-start/#vue-cli-install。很难回答您的 Q(项目范围 Q)。始终从“hello-world”示例开始。
  • 它是 Webstorm 特有的,因为我可以用其他方法做到这一点,但不能使用 Webstorm 创建的默认配置。我很欣赏这些链接,但已经发现他们俩都试图在发布之前解决这个问题。第二个告诉我如何使用 Nuxt 和 Webpack 导入,但我不知道如何将其转换为我开始的 Webstorm 的默认 VueJS 项目中的构建过程。第一个是通过创建一个 VueJS 应用程序进行的,但我已经完成了所有这些。我无法具体解决如何将 Vuetify 添加到其中。我尝试将它作为一个组件添加到export default 并在上面添加一个导入。
  • 谢谢。但正如你自己所说,这与编辑无关。如果我构建了一个可分发的版本并在任何旧的 Web 服务器上运行它,我仍然会遇到问题。我想你误解了——当你使用它的模板时,Webstorm 使用标准的项目格式。我不知道如何以这种格式包含 Vuetify。我能找到的所有操作方法都使用module.exports,但我的布局使用export default。我标记这个 webstorm 是因为我对 webstorm 的方法感到困惑,而不是编辑器本身。我发布了代码示例 - 我希望有人能告诉我如何根据它们导入 Vuetify。
  • “当你使用它的模板时,Webstorm 使用标准的项目格式。我不知道如何以那种格式包含 Vuetify”——这根本不是真的。 Webstorm 中没有标准的项目格式。它使用 vue cli 生成 Vue 项目,生成的项目与在终端中运行 vue create 时得到的项目没有区别
  • vue add 不仅添加了依赖,还添加了大约十几个文件,包括导入 Vuetify 并注册它的 src\plugins\vuetify.js;你的 main.js 应该导入这个插件,而不是直接导入 Vuetify。看我的回答

标签: vue-component webstorm vuetify.js


【解决方案1】:

我一直在努力解决如何将 Vuetify 包含在使用 Webstorm 创建的默认 Vue.js 项目中

只需按照https://vuetifyjs.com/en/getting-started/quick-start/的说明进行操作即可:

  • 通过在终端中运行 vue create 或在 IDE 中使用 New > Project > Vue.js 创建一个新项目(使用默认项目设置)
  • 在终端中,运行vue add vuetify

我的main.js文件如下:

您没有注册 Vuetify (Vue.use(Vuetify);如果您不喜欢遵循标准方式(即使用vue add),请尝试https://vuetifyjs.com/en/getting-started/quick-start/#webpack-install 中的说明

【讨论】:

  • 谢谢。我没有在 main.js 中注册 Vuetify。因为我有 Webstorm 自动为我创建的项目,所以我发现弄清楚我应该遵循哪些不同的方法非常令人困惑。 Javascript 和 VueJS 开发很简单,但所有的工具链等都令人困惑。
猜你喜欢
  • 1970-01-01
  • 2020-08-28
  • 2015-06-18
  • 1970-01-01
  • 2019-08-23
  • 2013-01-18
  • 2019-11-05
  • 2017-07-17
  • 2014-08-14
相关资源
最近更新 更多