Page Menu
Home
Sealhub
Search
Configure Global Search
Log In
Files
F969822
ExampleNode.node.ts
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Referenced Files
None
Subscribers
None
ExampleNode.node.ts
View Options
import
{
IExecuteFunctions
}
from
'n8n-core'
;
import
{
INodeExecutionData
,
INodeType
,
INodeTypeDescription
,
NodeOperationError
,
}
from
'n8n-workflow'
;
export
class
ExampleNode
implements
INodeType
{
description
:
INodeTypeDescription
=
{
displayName
:
'Example Node'
,
name
:
'exampleNode'
,
group
:
[
'transform'
],
version
:
1
,
description
:
'Basic Example Node'
,
defaults
:
{
name
:
'Example Node'
,
},
inputs
:
[
'main'
],
outputs
:
[
'main'
],
properties
:
[
// Node properties which the user gets displayed and
// can change on the node.
{
displayName
:
'My String'
,
name
:
'myString'
,
type
:
'string'
,
default
:
''
,
placeholder
:
'Placeholder value'
,
description
:
'The description text'
,
},
],
};
// The function below is responsible for actually doing whatever this node
// is supposed to do. In this case, we're just appending the `myString` property
// with whatever the user has entered.
// You can make async calls and use `await`.
async
execute
(
this
:
IExecuteFunctions
)
:
Promise
<
INodeExecutionData
[][]
>
{
const
items
=
this
.
getInputData
();
let
item
:
INodeExecutionData
;
let
myString
:
string
;
// Iterates over all input items and add the key "myString" with the
// value the parameter "myString" resolves to.
// (This could be a different value for each item in case it contains an expression)
for
(
let
itemIndex
=
0
;
itemIndex
<
items
.
length
;
itemIndex
++
)
{
try
{
myString
=
this
.
getNodeParameter
(
'myString'
,
itemIndex
,
''
)
as
string
;
item
=
items
[
itemIndex
];
item
.
json
[
'myString'
]
=
myString
;
}
catch
(
error
)
{
// This node should never fail but we want to showcase how
// to handle errors.
if
(
this
.
continueOnFail
())
{
items
.
push
({
json
:
this
.
getInputData
(
itemIndex
)[
0
].
json
,
error
,
pairedItem
:
itemIndex
});
}
else
{
// Adding `itemIndex` allows other workflows to handle this error
if
(
error
.
context
)
{
// If the error thrown already contains the context property,
// only append the itemIndex
error
.
context
.
itemIndex
=
itemIndex
;
throw
error
;
}
throw
new
NodeOperationError
(
this
.
getNode
(),
error
,
{
itemIndex
,
});
}
}
}
return
this
.
prepareOutputData
(
items
);
}
}
File Metadata
Details
Attached
Mime Type
text/x-java
Expires
Sun, Nov 24, 00:56 (1 d, 16 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
548046
Default Alt Text
ExampleNode.node.ts (2 KB)
Attached To
Mode
rNPN n8n-phabricator-node
Attached
Detach File
Event Timeline
Log In to Comment