Laravel 5:使用 Vue 安装自定义组件时出现错误“不在 npm 注册表中”。
Posted
技术标签:
【中文标题】Laravel 5:使用 Vue 安装自定义组件时出现错误“不在 npm 注册表中”。【英文标题】:Laravel 5 : Install custom component using Vue having error " is not in the npm registry." 【发布时间】:2020-02-13 16:06:08 【问题描述】:我们使用的技术是 Laravel,现在正在尝试使用 Vue js。在我的 app.js 中
App.js 文件
Vue.component('main-chart-of-accounts', require('chart_of_account.vue').default);
也在同一路径中。我有那个文件 chart_of_account.vue。在这个文件中,这是我们的模板
chart_of_account.vue 文件
<template>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
<article-list></article-list>
<!-- end card-->
</div>
</template>
<script>
import ChartOfAccountList from '../components/configurations/chart-of-accounts/ChartOfAccountList.vue';
export default
data: function ()
return
detail: ''
,
mounted()
,
methods:
,
watch:
,
components:
ChartOfAccountList
</script>
当我尝试通过执行此命令安装 ChartOfAccount.vue 时遇到一些错误
npm install --save ChartOfAccount.vue
1) 它说
'ChartOfAccount.vue@latest' 不在 npm 注册表中。 npm 错误! 404 您的包名无效,因为 npm 错误! 404 1.名称不能再包含大写字母
所以我将文件名更改为 chart_of_account.vue 然后我尝试再次安装,但这次我的错误是
'chart_of_account.vue@latest' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
问题:如何在 app.js 中导入我的 chart_of_account.vue?
【问题讨论】:
【参考方案1】:使用require()
,您可以按名称导入NPM 包,例如require('express')
;
如果要导入本地文件,则必须使用相对路径,“当前路径”为./
所以你的代码应该是:
Vue.component('main-chart-of-accounts', require('./chart_of_account.vue').default);
这样你的打包器就会知道你需要一个文件,而不是一个名为“chart_of_account.vue”的包
【讨论】:
其实我已经这样做了,但我遇到了同样的错误。 'chart_of_account.vue@latest' 不在 npm 注册表中。 npm 错误! 404 你应该让作者发布它(或自己使用名称!)以上是关于Laravel 5:使用 Vue 安装自定义组件时出现错误“不在 npm 注册表中”。的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 5.6.7 和 Vue.js 中的自定义错误消息,尤其是组件