rcarcasses / vue-cytoscape

cytoscape.js now inside vue.js
https://rcarcasses.github.io/vue-cytoscape
MIT License
96 stars 34 forks source link

Issue when included via webpack in production mode #2

Closed steve-heine closed 6 years ago

steve-heine commented 6 years ago

With a vue-cli webpack option, on a run build i'm getting the following error

TypeError: e.registerBinding is not a function at vue-cytoscape.js:formatted:1 at vue-cytoscape.js:formatted:1 at .a.load (vue-cytoscape.js:formatted:1) at .s.notify (vue-cytoscape.js:formatted:1) at u.notify (vue-cytoscape.js:formatted:1) at u.initRenderer (vue-cytoscape.js:formatted:1) at new u (vue-cytoscape.js:formatted:1) at s (vue-cytoscape.js:formatted:1) at Object.setConfig (vue-cytoscape.js:formatted:1) at a.mounted (vue-cytoscape.js:formatted:1)

Everything works fine in run dev mode.

i'm not getting much traction on a workaround/fix yet.

this.$cytoscape is undefined.

Any ideas?

rcarcasses commented 6 years ago

Hi, sorry for the late reply, can you provide a small testable example so I can reproduce it? Thank you for your patience.

steve-heine commented 6 years ago

Not a problem, I think it may actually be related to the specific build of cytoscape, and is resolved in the next release. I tested your code as a regular component and it worked fine. Cytoscape has a known bug for that version when running webpack with broken polyfills, so i suspect I may be hitting that.

I’ll try and get an example thrown together later, hopefully tonight.

On Mon, Jun 11, 2018 at 10:47 AM rcarcasses notifications@github.com wrote:

Hi, sorry for the late reply, can you provide a small testable example so I can reproduce it? Thank you for your patience.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/rcarcasses/vue-cytoscape/issues/2#issuecomment-396270018, or mute the thread https://github.com/notifications/unsubscribe-auth/ACLH7Upmo7wWBPDX3T8dGWNVbcNS4Rylks5t7oMSgaJpZM4Uhlhi .

rcarcasses commented 6 years ago

Okay thank you, I'm eager to see, it may be the case that I shipped a wrong configuration.

rcarcasses commented 6 years ago

Any news on this gentleman? Can you provide a reproducible example?

wooter-s commented 6 years ago

Same problem;Have you solve the problem? In my local development is ok;Via webpack to build online; throw err

TypeError: e.registerBinding is not a function at monitorDetail.fa9e4fc1ed86a0232e93.js:1 at monitorDetail.fa9e4fc1ed86a0232e93.js:1 at T.a.load (monitorDetail.fa9e4fc1ed86a0232e93.js:1) at T.l.notify (monitorDetail.fa9e4fc1ed86a0232e93.js:1) at u.notify (monitorDetail.fa9e4fc1ed86a0232e93.js:1) at u.initRenderer (monitorDetail.fa9e4fc1ed86a0232e93.js:1) at new u (monitorDetail.fa9e4fc1ed86a0232e93.js:1) at s (monitorDetail.fa9e4fc1ed86a0232e93.js:1) at t.value (monitorDetail.fa9e4fc1ed86a0232e93.js:1) at e.notifyAll (common.fa9e4fc1ed86a0232e93.js:1)

@steve-heine

Feng-ChuanJiang commented 6 years ago

是的,我也遇到这个问题,有解决方案吗

rcarcasses commented 6 years ago

Okay, I just created a new project with the latest vue-cli, imported vue-cytoscape, put some dummy code inside and build it for production and all seems to be fine. I'm not sure but this may be related to webpack configuration you are using, for building I just invoked yarn build which is just a call to "vue-cli-service build". You can find the source code of the example here:

https://github.com/rcarcasses/vue-cytoscape-test

I'll need further information about this issue to figure out precisely your build problem.

Hope the example serves you as a good starting point for your work.

rcarcasses commented 6 years ago

This doesn't seem like a vue-cytoscape issue but a webpack build config. If you experience the same problem and you are willing to share a concrete example then feel free to open a new issue.

wiredgril666 commented 5 years ago

请问解决这个问题了吗?我也遇到了这个问题。开发环境是正常的。然后用webpack 打包后就不行了。@Feng-ChuanJiang

wiredgril666 commented 5 years ago

@Feng-ChuanJiang不过我是用的cytoscape,js 也不是用vue,是用react开发的

Feng-ChuanJiang commented 5 years ago

@wiredgril666 我换成官方的引入方式了

wiredgril666 commented 5 years ago

@Feng-ChuanJiang 哪种是官方的引入方式啊

Feng-ChuanJiang commented 5 years ago

@wiredgril666 以前我是用的是npm i vue-cytoscape这种方式,换成了npm i cytoscape