Похожие чаты

Which one do you prefer, for a module with functions

(not utils, a sort of Dao for example)?
For an utils module I would prefer named, but in this case?

Default export with object, so you need to import the complete object and assign it a name
const findUserById = id => {};
const saveNewUser = newUser => {};
export default {
findUserById,
saveNewUser
};

Named export but there's the risk someone could import the function directly (it looks ugly in my opinion - except for utilities functions, but I used to use Java)
export const findUserById = id => {};
export const saveNewUser = newUser => {};

Because in usage I personally prefer
import UserService from "./UserService";
UserService.find.....;

Instead of a possibility of doing:
import { findUserById } from "./UserService";
findUserById();

Yes you can use * as ....., but you're still able to import function directly as above

So, what's the convention? Or, what do you often use?

2 ответов

4 просмотра

I prefer object like, as you will do in Java. There is no convenion in JS, because you are free to do both, but I like OO like. It is more consistent. Also if you use typescript it looks cleaner in my opinion. But it's just an opinion, you can use whatever you prefer.

I like named exports

Похожие вопросы

Карта сайта