Ошибка Riot.js при сборке с использованием Riotjs Webpack Starterkit
Я пытаюсь добавить метод к существующему тегу, который будет вызываться при нажатии кнопки, я получаю эту ошибку при сборке dev.
https://github.com/wbkd/riotjs-startkit
ОШИБКА в./src/components/itemlist.tag Ошибка сборки модуля: SyntaxError: unknown: неожиданный токен (15:15)});
addItem(e) {
console.log('elo');
}
at Parser.pp.raise (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\parser\location.js:24:13)
at Parser.pp.unexpected (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\parser\util.js:82:8)
at Parser.pp.semicolon (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\parser\util.js:69:81)
at Parser.pp.parseExpressionStatement (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\parser\statement.js:427:8)
at Parser.parseExpressionStatement (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\plugins\flow.js:676:20)
at Parser.pp.parseStatement (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\parser\statement.js:142:21)
at Parser.parseStatement (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\plugins\flow.js:655:22)
at Parser.pp.parseTopLevel (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\parser\statement.js:30:21)
at Parser.parse (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\parser\index.js:70:17)
at Object.parse (C:\Users\Adam\Documents\test\riotjs-startkit-master\node_modules\babel\node_modules\babel-core\node_modules\babylon\lib\index.js:45:50)
@./src/pages/home.tag 5: 0-37
1 ответ
Похоже, что startkit использует webpack и babel для переноса из es6. Синтаксис, который вы используете, предоставляется Riot, это не настоящий es6.
Поэтому, если вы переходите от es6, используйте синтаксис es6, потому что синтаксис Riot.js не будет работать.
this.addItem = (e) => {
console.log('elo');
}
Если нет, вы можете использовать синтаксис JS
this.addItem = function(s) {
console.log('elo');
}
или также вы можете использовать es6-подобный синтаксис, предоставляемый Riot.js
addItem(e) {
console.log('elo');
}