使用命名导出返回由函数组成的对象文字时,是否可以将参数传递给这些函数之一?
例如,假设下面的函数根据用户是否为管理员返回条件结果:
// gridConfig.js
function getColumnDefs(isAdmin = false) {
// conditionally return columns
return {
orders: [ ... ],
...
}
}
export const config = {
columnDefs: getColumnDefs(),
rowDefs: getRowDefs(),
...
};
// main.js
import { config } from './gridConfig';
function doStuff() {
const { columnDefs, rowDefs } = config;
grid.columnDefs = columnDefs['orders'];
...
}
如果我将参数添加到导出内部的函数调用中,则表示未定义参数。向导出别名添加参数会产生语法错误。即使允许这样做,也不清楚在main.js中将参数传递到哪里。
以这种方式构造导出时,是否可以通过某种方式传递参数?
答案 0 :(得分:1)
bookdown
答案 1 :(得分:1)
也许保持简单可能会有用:)
export const config = (isAdmin) => ({
columnDefs: getColumnDefs(isAdmin),
rowDefs: getRowDefs(),
...
});
// Import
import { config } from '[...]'; // Placeholder path of import
const myConfigFalse = config(false);
const myConfigTrue = config(true);