Git Product home page Git Product logo

Comments (8)

Exodia avatar Exodia commented on May 26, 2024

已经支持,见第三个参数

from oo.

Exodia avatar Exodia commented on May 26, 2024

艾玛,文档没加上,手机不方便写字,白天说

from oo.

otakustay avatar otakustay commented on May 26, 2024

代码中是这样的:

obj[setter] = !accessor || typeof accessor.set !== 'function' ? simpleSetter(name) : accessor.set;

但是我如果提供了set,又不知道怎么实现,因为没地方让我放这个value

from oo.

Exodia avatar Exodia commented on May 26, 2024

确实没法满足隐藏属性的需求,我改改,大概按第二种模式

from oo.

Justineo avatar Justineo commented on May 26, 2024

这个 feature 似乎 readme 里没有?

from oo.

Exodia avatar Exodia commented on May 26, 2024

这个 feature 似乎 readme 里没有?

带逻辑的 hook 还没实现,因为想着如果能支持 private 成员的话,这个可能没有太大意义了;

目前第三个参数只支持传入 setter/getter 覆盖默认的 simpleAccessor,这块文档确实遗漏了,我后面补补

from oo.

Justineo avatar Justineo commented on May 26, 2024

目测覆盖 simpleAccessor 的话得把 this.__eooPrivateMembers__ 传给 accessor,但是这样就不是 private 了……所以第三个参数目前感觉没啥意义?

from oo.

Exodia avatar Exodia commented on May 26, 2024

目测覆盖 simpleAccessor 的话得把 this.eooPrivateMembers 传给 accessor,但是这样就不是 private 了……所以第三个参数目前感觉没啥意义?

@otakustay 的意思是,第三个参数是个 hook,在eooPrivateMembers上添加私有成员,外部使用的时候只能通过 set/get去操作这个成员,无法直接获取。
如果支持了 private 特性的话,eooPrivateMembers就没有必要了。

目前第三个参数只是可以提供自定义的 setter/getter,可以在这里面做一些额外的逻辑,至于成员的存储还是需要使用者自己来做了,因为目前没有将eooPrivateMembers暴露给 setter/getter

from oo.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.