Javascript 为什么我的代码在节点中运行良好,但给出了;意外标记“;当尝试使用browserify时?
当我执行Javascript 为什么我的代码在节点中运行良好,但给出了;意外标记“;当尝试使用browserify时?,javascript,web,browserify,Javascript,Web,Browserify,当我执行node index.js操作时,我的文件会毫无错误地运行,但一旦执行该操作, browserify index.js--standalone foo>app.js我得到了这个错误: 解析/path_to_file/index.js时出现意外的令牌(369:8)-这里是包含第369行的函数,仅供参考: function createType(attrs = {}) { return { name: '<missing name>', a
node index.js
操作时,我的文件会毫无错误地运行,但一旦执行该操作,
browserify index.js--standalone foo>app.js
我得到了这个错误:
解析/path_to_file/index.js时出现意外的令牌(369:8)
-这里是包含第369行的函数,仅供参考:
function createType(attrs = {}) {
return {
name: '<missing name>',
aliasOfName: '',
arrayOf: null,
optionalOf: null,
baseName: '',
base: null,
fields: [],
serialize: serializeUnknown,
deserialize: deserializeUnknown,
...attrs
}; <------ Line 369
}
您是否正在使用任何内置的node.js模块,例如
fs
、os
,或任何其他无法使用的模块?createType(attrs={})
您是否有browserfy配置来处理es6默认参数@Keith hmm我刚刚试过,但是现在我得到了一个不同的箭头函数错误:错误:第501行:意外标记=>
我没有使用browserfy
,但是我很惊讶默认它不会解析es6
东西。您现在可以尝试->https://github.com/esnext/es6-arrow-function
另一个想法是使用webpack
,如果您的目标浏览器是现代浏览器,那么webpack将传递箭头函数和es6默认参数等。查看github,这两个函数都已经有一段时间没有更新了,那么,browserfy
现在甚至得到支持了吗?@Keith idk。我一直用browserify。唉。我认为解决办法是使用巴别塔。我稍后会试试这个。
function getTypesFromAbi(initialTypes, abi) {
let types = { ...initialTypes };
for (let { new_type_name, type } of abi.types)
types[new_type_name] =
createType({ name: new_type_name, aliasOfName: type, });
for (let { name, base, fields } of abi.structs) {
types[name] = createType({
name,
baseName: base,
Line 501 -------> fields: fields.map(({ name, type }) => ({ name, typeName: type, type: null })),
serialize: serializeStruct,
deserialize: deserializeStruct,
});
}
for (let name in types) {
let type = types[name];
if (type.baseName)
type.base = getType(types, type.baseName);
for (let field of type.fields)
field.type = getType(types, field.typeName);
}
return types;
} // getTypesFromAbi