vue编译时报错,请各位大佬赐教

有暗香盈袖
  • 2
新手上路,请多包涵

运行项目的时候就会报这个错误:expected "]", got ","我在数组中添加一个元素不会出现任何问题,但是添加第二个数据就会包错。我很郁闷,我创建项目的时候就没有开启eslint语法检测。跪求各位大佬指点迷津,我搞了一天没搞定。
图片描述

图片描述

图片描述

回复
阅读 1.6k
4 个回答
✓ 已被采纳
报错原因
  • 错误的使用了stylus对js进行解析
问题定位
  1. 检查js部分代码是否放在了.vue文件的正确位置
  2. 检查webpack配置里面,stylus部分的配置是否正常
相关信息
  • 错误栈
at Parser.subscript (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:2052:12)
  • 源码
/**
 *   member ('[' expression ']')+ '='?
 * | member
 */

subscript: function() {
  var node = this.member()
    , id;
  while (this.accept('[')) {
    node = new nodes.BinOp('[]', node, this.expression());
    this.expect(']');
  }
  // TODO: TernaryOp :)
  if (this.accept('=')) {
    node.op += '=';
    node.val = this.list();
    // @block support
    if (node.val.isEmpty) this.assignAtblock(node.val);
  }
  return node;
},
有暗香盈袖
  • 2
新手上路,请多包涵

全部错误代码:

error in ./src/pages/home/components/Swiper.vue

Module build failed: ParseError: E:webWockspacetravelsrcpageshomecomponentsSwiper.vue:30:6
26| },
27| swiperList: [{
28| id:'002',
29| imgUrl: 'http://pqnplp9mh.bkt.clouddn....'
30| },{
------------^
31| id:'002',
32| imgUrl: 'http://pqnplp9mh.bkt.clouddn....'
33| }]

expected "]", got ","

at Parser.error (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:259:11)
at Parser.expect (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:287:12)
at Parser.subscript (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:2052:12)
at Parser.unary (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:2039:17)
at Parser.defined (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:2011:21)
at Parser.multiplicative (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1985:21)
at Parser.additive (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1970:21)
at Parser.range (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1954:21)
at Parser.relational (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1933:21)
at Parser.in (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1917:21)
at Parser.equality (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1902:23)
at Parser.typecheck (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1886:21)
at Parser.logical (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1873:21)
at Parser.ternary (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1857:21)
at Parser.negation (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1849:17)
at Parser.expression (E:\webWockspace\travel\node_modules\stylus\lib\parser.js:1828:24)

@ ./node_modules/vue-style-loader!./node_modules/css-loader?{"sourceMap":true}!./node_modules/stylus-loader?{"sourceMap":true}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/pages/home/components/Swiper.vue 4:14-246 13:3-17:5 14:22-254
@ ./src/pages/home/components/Swiper.vue
@ ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/pages/home/Home.vue
@ ./src/pages/home/Home.vue
@ ./src/router/index.js
@ ./src/main.js
@ multi (webpack)-dev-server/client?http://localhost:8081 webpack/hot/dev-server ./src/main.js

BigDeep
  • 84

第二条数据的 id 换成002 试一下。
可能id不唯一导致了。

格式化试试呢?

宣传栏