mirror of
https://github.com/n8n-io/n8n.git
synced 2025-03-05 20:50:17 -08:00
fix(editor): Add missing activeNode check for redrawing (no-changelog) (#7919)
## Summary Wasn't able to reproduce, but `activeNode` sporadically returns null in some scenarios. Added appropriate check. ## Issues fixed Include links to Github issue or Community forum post or **Linear ticket**: > Important in order to close automatically and provide context to reviewers https://linear.app/n8n/issue/N8N-7076/typeerror-cannot-read-properties-of-null-reading-name ## Review / Merge checklist - [x] PR title and summary are descriptive. **Remember, the title automatically goes into the changelog. Use `(no-changelog)` otherwise.** ([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md)) - [x] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up ticket created. - [ ] Tests included. > A bug is not considered fixed, unless a test is added to prevent it from happening again. A feature is not complete without tests. > > *(internal)* You can use Slack commands to trigger [e2e tests](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#a39f9e5ba64a48b58a71d81c837e8227) or [deploy test instance](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#f6a177d32bde4b57ae2da0b8e454bfce) or [deploy early access version on Cloud](https://www.notion.so/n8n/Cloudbot-3dbe779836004972b7057bc989526998?pvs=4#fef2d36ab02247e1a0f65a74f6fb534e).
This commit is contained in:
parent
e4ae11c2ad
commit
7c57332d8f
|
@ -655,9 +655,10 @@ export default defineComponent({
|
||||||
}
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
typeof this.activeNodeType?.outputs === 'string' ||
|
this.activeNode &&
|
||||||
typeof this.activeNodeType?.inputs === 'string' ||
|
(typeof this.activeNodeType?.outputs === 'string' ||
|
||||||
this.redrawRequired
|
typeof this.activeNodeType?.inputs === 'string' ||
|
||||||
|
this.redrawRequired)
|
||||||
) {
|
) {
|
||||||
// TODO: We should keep track of if it actually changed and only do if required
|
// TODO: We should keep track of if it actually changed and only do if required
|
||||||
// Whenever a node with custom inputs and outputs gets closed redraw it in case
|
// Whenever a node with custom inputs and outputs gets closed redraw it in case
|
||||||
|
@ -668,7 +669,7 @@ export default defineComponent({
|
||||||
}, 1);
|
}, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.outputPanelEditMode.enabled) {
|
if (this.outputPanelEditMode.enabled && this.activeNode) {
|
||||||
const shouldPinDataBeforeClosing = await this.confirm(
|
const shouldPinDataBeforeClosing = await this.confirm(
|
||||||
'',
|
'',
|
||||||
this.$locale.baseText('ndv.pinData.beforeClosing.title'),
|
this.$locale.baseText('ndv.pinData.beforeClosing.title'),
|
||||||
|
@ -680,13 +681,10 @@ export default defineComponent({
|
||||||
|
|
||||||
if (shouldPinDataBeforeClosing === MODAL_CONFIRM) {
|
if (shouldPinDataBeforeClosing === MODAL_CONFIRM) {
|
||||||
const { value } = this.outputPanelEditMode;
|
const { value } = this.outputPanelEditMode;
|
||||||
|
try {
|
||||||
if (this.activeNode) {
|
this.setPinData(this.activeNode, jsonParse(value), 'on-ndv-close-modal');
|
||||||
try {
|
} catch (error) {
|
||||||
this.setPinData(this.activeNode, jsonParse(value), 'on-ndv-close-modal');
|
console.error(error);
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue