Vux: 我也遇到了和部分人一样的问题, Cell引入就报 Unexpected token import

Created on 5 Aug 2016  ·  15Comments  ·  Source: airyland/vux

我看有朋友发过类似的错误,但是他们的问题貌似都解决了

qq 20160805111817

C:\Users\k>node -v
v6.3.1
C:\Users\k>npm -v
3.10.3
<template>
  <div>
    <group>
      <cell title="vue" value="cool"></cell>
    </group>
  </div>
</template>
<script>
import Group from 'vux/src/components/group'
import Cell from 'vux/src/components/cell'
export default {
  components: {
    Group,
    Cell
  }
}
</script>
<style>
@import '~vux/dist/vux.css';
</style>
var path = require('path')
var config = require('../config')
var utils = require('./utils')
var projectRoot = path.resolve(__dirname, '../')

module.exports = {
  entry: {
    app: './src/main.js'
  },
  output: {
    path: config.build.assetsRoot,
    publicPath: process.env.NODE_ENV === 'production' ? config.build.assetsPublicPath : config.dev.assetsPublicPath,
    filename: '[name].js'
  },
  resolve: {
    extensions: ['', '.js', '.vue'],
    fallback: [path.join(__dirname, '../node_modules')],
    alias: {
      'src': path.resolve(__dirname, '../src'),
      'assets': path.resolve(__dirname, '../src/assets'),
      'components': path.resolve(__dirname, '../src/components')
    }
  },
  resolveLoader: {
    fallback: [path.join(__dirname, '../node_modules')]
  },
  module: {
    preLoaders: [
      {
        test: /\.vue$/,
        loader: 'eslint',
        include: projectRoot,
        exclude: /node_modules/
      },
      {
        test: /\.js$/,
        loader: 'eslint',
        include: projectRoot,
        exclude: /node_modules/
      }
    ],
    loaders: [
      {
        test: /\.vue$/,
        loader: 'vue'
      },
      {
        test: /\.js$/,
        loader: 'babel',
        include: projectRoot,
        exclude: /node_modules/
      },
      {
        test: /\.json$/,
        loader: 'json'
      },
      {
        test: /\.html$/,
        loader: 'vue-html'
      },
      {
        test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
        loader: 'url',
        query: {
          limit: 10000,
          name: utils.assetsPath('img/[name].[hash:7].[ext]')
        }
      },
      {
        test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
        loader: 'url',
        query: {
          limit: 10000,
          name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
        }
      },
      {
          test: /vux.src.*?js$/,
          loader: 'babel'
      }
    ]
  },
  eslint: {
    formatter: require('eslint-friendly-formatter')
  },
  vue: {
    loaders: utils.cssLoaders()
  }
}

Most helpful comment

兄弟,为啥总是关闭后打开关闭后打开。。

All 15 comments

:sweat_smile: 诡异的问题,麻烦打包一份给我邮箱方便环境排查?

删除 node_modules/vux/src/libs/router.js 里的两个 export应该就没错误了

@jxunx 为啥要删除呢?会不会有影响?

@jxunx @airyland 我知道原因了,可能和具体的步骤有关系
vue init webpack project
cd project
cnpm install
cnpm install vux
cnpm install less less-loader --save-dev
文档中说 cnpm run dev
这时,我再去修改 webpack配置,然后 添加 template script style 就会报错
然后我注销了一下,杀掉所有进程, 然后再回来 cnpm run dev 就不报错了

-- 总结

修改完 配置 再去 run 就不会报错了

听起来相当玄幻啊。

@shenfakuan 修改完 webpack 配置要重新 run 才生效,是不是其实不是先后问题

@airyland ....这个我也布吉岛了, 修改玩配置再run 就没问题

@jxunx 那是啥问题呢, run 之后 修改配置 确定没问题? 我一个做php 对这个webpack真的是不懂啊

就这样了,等熟悉了之后也许就知道原因了,现在还是懵懂中

兄弟,为啥总是关闭后打开关闭后打开。。

我下载了你的项目文件,安装依赖后在我本地正常。。
image

@shenfakuan run 之后修改配置,此时配置还是没修改前的,修改后的配置要下次 run 才生效,我刚刚是这意思,我也是第一次接触 webpack orz.

确认下,你的情况是不是本来没有加上文档上的 { test: /vux.src.*?js$/, loader: 'babel' }, 修改 webpack 配置就是加上这两句?

@jxunx 我是先 run 了 然后 才加的 { test: /vux.src.*?js$/, loader: 'babel' } , 所以出问题了, 重新run 就ok了,不是说的 hot reload 么, 看来配置 不够 hot 啊

@airyland 是的, 修改配置之后重新 run 就行了

也遇到这个问题了,暂时还没解决

Was this page helpful?
0 / 5 - 0 ratings

Related issues

skyshirt picture skyshirt  ·  4Comments

FlyArtist picture FlyArtist  ·  3Comments

iqiuye picture iqiuye  ·  4Comments

hezhiwen940420 picture hezhiwen940420  ·  4Comments

mymmoonoa picture mymmoonoa  ·  4Comments