Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Vue的故事书:[Vue warn]:未能装载组件:未定义模板或渲染函数_Javascript_Vue.js_Storybook - Fatal编程技术网

Javascript Vue的故事书:[Vue warn]:未能装载组件:未定义模板或渲染函数

Javascript Vue的故事书:[Vue warn]:未能装载组件:未定义模板或渲染函数,javascript,vue.js,storybook,Javascript,Vue.js,Storybook,我想使用并为我们的开发人员和产品经理提供一个基于web的组件库来构建我的前端 Gridsome正在正常工作。通过npm运行故事书运行故事书。但当我在Chrome中访问该页面时,控制台出现错误,提示:[Vue warn]:未能装载组件:未定义模板或呈现函数 我已经按照故事书文档设置了我的设置。但是我创建了一个定制的webpack.config.js,因为我有全局(scss)资源,应该在我的所有组件(比如全局变量)中加载和注入这些资源 我想问题出在我的网页文件里。但改变事物会导致更多的错误^^ 我的

我想使用并为我们的开发人员和产品经理提供一个基于web的组件库来构建我的前端

Gridsome正在正常工作。通过
npm运行故事书运行故事书
。但当我在Chrome中访问该页面时,控制台出现错误,提示:[Vue warn]:未能装载组件:未定义模板或呈现函数

我已经按照故事书文档设置了我的设置。但是我创建了一个定制的webpack.config.js,因为我有全局(scss)资源,应该在我的所有组件(比如全局变量)中加载和注入这些资源

我想问题出在我的网页文件里。但改变事物会导致更多的错误^^

我的组成部分:

<template>
    <h1 :style="styles">
        <slot></slot>
    </h1>
</template>
<script>
    export default {
        name: "FaaH1",
        props: {
            color: {
                type: String,
                required: false
            }
        },
        computed: {
            styles(){
                return {
                    color: this.color
                }
            }
        }
    }
</script>
<style scoped lang="scss">
    h1 {
        font-size:   $font-size-base * 2.5;
        color: $secondary;
        text-transform: uppercase;
        font-weight: $font-weight-extrabold;
    }
</style>
最后是我的webpack.config.js

const path = require('path');

module.exports = async ({config, mode}) => {
    config.module.rules.push({
        test: /\.scss$/,
        use: ['style-loader', 'css-loader', 'sass-loader'],
        include: path.resolve(__dirname, '../src/assets/styles/'),
    });

    config.module.rules.push({
        test: /\.vue$/,
        use: 'vue-loader'
    });

    config.module.rules.push({
        test: /\.css$/,
        use: [
            { loader: 'vue-style-loader' },
            { loader: 'css-loader', options: { sourceMap: true } },
        ]
    });

    config.module.rules.push({
        test: /\.scss$/,
        use: [
            { loader: 'vue-style-loader' },
            { loader: 'css-loader', options: { sourceMap: true } },
            { loader: 'sass-loader', options: { sourceMap: true } },
            { loader: 'sass-resources-loader',
                options: {
                    sourceMap: true,
                    resources: [
                        path.resolve('../src/assets/styles/_globals.scss')
                    ]
                }
            }
        ]
    });

    return config;
};

猜测一下,Webpack不知道如何尝试将
FaaH1
的请求视为
FaaH1.vue
。尝试在
导入路径中指定,即

从“./src/components/text/headers/FaaH1.vue”导入FaaH1
或者,将
.vue
添加到网页包列表中

config.resolve.extensions.push(“.vue”)

猜测一下,Webpack不知道如何尝试将
FaaH1
的请求视为
FaaH1.vue
。尝试在
导入路径中指定,即

从“./src/components/text/headers/FaaH1.vue”导入FaaH1
或者,将
.vue
添加到网页包列表中

config.resolve.extensions.push(“.vue”)

不确定是否可以按以下方式注册Vue全局组件。
Vue.component()
确实将函数类型作为其第二个参数。但是我认为定制函数的原型中可能没有足够的属性。因此,这里最好使用
Vue.extend()
而不是箭头函数

// Perhaps NG
export const faaH1 = () => ({
    components: {FaaH1},
    template: '<faa-h1>Heading H1</faa-h1>'
});

// This should work
export const faaH1 = Vue.extend({
    components: {FaaH1},
    template: '<faa-h1>Heading H1</faa-h1>'
})

Vue.component('faa-h1', FaaH1);
//NG
导出常量faaH1=()=>({
组件:{FaaH1},
模板:“标题H1”
});
//这应该行得通
导出常量faaH1=Vue.extend({
组件:{FaaH1},
模板:“标题H1”
})
Vue.组件('faa-h1',FaaH1);

不确定是否可以按以下方式注册Vue全局组件。
Vue.component()
确实将函数类型作为其第二个参数。但是我认为定制函数的原型中可能没有足够的属性。因此,这里最好使用
Vue.extend()
而不是箭头函数

// Perhaps NG
export const faaH1 = () => ({
    components: {FaaH1},
    template: '<faa-h1>Heading H1</faa-h1>'
});

// This should work
export const faaH1 = Vue.extend({
    components: {FaaH1},
    template: '<faa-h1>Heading H1</faa-h1>'
})

Vue.component('faa-h1', FaaH1);
//NG
导出常量faaH1=()=>({
组件:{FaaH1},
模板:“标题H1”
});
//这应该行得通
导出常量faaH1=Vue.extend({
组件:{FaaH1},
模板:“标题H1”
})
Vue.组件('faa-h1',FaaH1);

猜测一下,Webpack不知道如何尝试将
FaaH1
的请求视为
FaaH1.vue
。尝试在
import
路径中指定,即
import FaaH1 from./src/components/text/headings/FaaH1.vue“
猜测一下,Webpack不知道如何尝试将
FaaH1
的请求视为
FaaH1.vue
。尝试在导入路径中指定,即从“./src/components/text/headings/FaaH1.vue”导入FaaH1
// Perhaps NG
export const faaH1 = () => ({
    components: {FaaH1},
    template: '<faa-h1>Heading H1</faa-h1>'
});

// This should work
export const faaH1 = Vue.extend({
    components: {FaaH1},
    template: '<faa-h1>Heading H1</faa-h1>'
})

Vue.component('faa-h1', FaaH1);