import and module.exports in Vuex module show Uncaught TypeError: Cannot assign to read only property 'exports' of object
import and module.exports in Vuex module show Uncaught TypeError: Cannot assign to read only property 'exports' of object
我有一个 Vue CLI 的 vuex 模块
import { Sev } from "../api";
const modules = {
actions: {
getData() {
Sev();
}
}
};
module.exports = modules;
我在浏览器控制台中遇到错误
test.js?5df4:10 Uncaught TypeError: Cannot assign to read only property 'exports' of object '#<Object>'
at Module.eval (test.js?5df4:10)
at eval (test.js:12)
at Module../src/config/store_modules/test.js (app.js:1263)
然后我将代码更改为
import { Sev } from "../api";
// const modules = {
export default {
actions: {
getData() {
Sev();
}
}
};
// module.exports = modules;
然后好好工作。但我不知道有什么不同。这是一个错误吗?
VueJS 是浏览器代码并使用 ES6 模块
import xxx from './path/to/xxx';
export xxx;
export default xxx;
而 CommonJS 被 NodeJS 使用,完全不同
const yyy = require('./path/to/yyy');
module.exports = { yyy };
exports.zzz = yyy;
您正在编写 Vue 代码,因此您必须使用 ES6 模块和 import/export 语法,module
对象的行为与您在 ES6 中所期望的不同
我有一个 Vue CLI 的 vuex 模块
import { Sev } from "../api";
const modules = {
actions: {
getData() {
Sev();
}
}
};
module.exports = modules;
我在浏览器控制台中遇到错误
test.js?5df4:10 Uncaught TypeError: Cannot assign to read only property 'exports' of object '#<Object>'
at Module.eval (test.js?5df4:10)
at eval (test.js:12)
at Module../src/config/store_modules/test.js (app.js:1263)
然后我将代码更改为
import { Sev } from "../api";
// const modules = {
export default {
actions: {
getData() {
Sev();
}
}
};
// module.exports = modules;
然后好好工作。但我不知道有什么不同。这是一个错误吗?
VueJS 是浏览器代码并使用 ES6 模块
import xxx from './path/to/xxx';
export xxx;
export default xxx;
而 CommonJS 被 NodeJS 使用,完全不同
const yyy = require('./path/to/yyy');
module.exports = { yyy };
exports.zzz = yyy;
您正在编写 Vue 代码,因此您必须使用 ES6 模块和 import/export 语法,module
对象的行为与您在 ES6 中所期望的不同