繁体   English   中英

如何使用Webpack在Vue.js单文件组件中导入json文件

[英]How to import a json file in a Vue.js single file component with Webpack

重要

问题出在错误目录中的文件。 这可能对您没有帮助...

问题

我使用Vue.js单文件组件,并要导入.json在其中的一个文件,但我无法弄清楚如何做到这一点。 这是我想做的:

src/App.vue包含:

import data from './tree.json'; // This does not work!

export default {
  /* Component def */
};

Webpack然后给出以下错误:

ERROR in ./src/App.vue?vue&type=script&lang=js& (./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/App.vue?vue&type=script&lang=js&)
Module not found: Error: Can't resolve './tree.json' in 'C:\src'
 @ ./src/App.vue?vue&type=script&lang=js& (./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/App.vue?vue&type=script&lang=js&) 8:0-31
 @ ./src/App.vue?vue&type=script&lang=js&
 @ ./src/App.vue
 @ ./src/app.js
 @ multi ./src/app.js

Webpack配置(简体):

module.exports = {
  mode: 'development',

  entry: [
    './src/app.js',
  ],

  module: {
    rules: [
      {
        test: /\.vue$/,
        use: 'vue-loader',
      },
      {
        test: /\.js$/,
        use: 'babel-loader',
      },
    ],
  },
};

我正在使用Vue.js 2.5和Webpack 4.28。

尝试在“ vanilla” .js文件中导入相同的.json文件确实起作用

// In src/app.js
import data from './tree.json';

这使我觉得有具体的东西vue-loader不随的WebPack的原生处理工作.json进口,但我不知道是什么。

该错误表明它正在src /目录中寻找tree.json文件。 如果不存在,那是您的问题。

⚠️ Since webpack >= v2.0.0, importing of JSON files will work by default. You might still want to use this if you use a custom file extension. See the v1.0.0 -> v2.0.0 Migration Guide for more information

基本上,您的问题与文件不在正确的目录中有关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM