Значение Diagram.contextMenu не является экземпляром украшения
У меня есть следующее определение для contextMenu
на моем пути diagram
SeatingMapGraphicsRef.contextMenu =
$(go.Adornment, "Vertical",
// no binding, always visible button:
$("ContextMenuButton",
$(go.TextBlock, "Hold Seats"),
{ click: function(e, obj) {
holdSeatsInDragSelect();
} }),
$("ContextMenuButton",
$(go.TextBlock, "Select Seats"),
{ click: function(e, obj) {
} }),
$("ContextMenuButton",
$(go.TextBlock, "Lock Seats"),
{ click: function(e, obj) {
} }),
$("ContextMenuButton",
$(go.TextBlock, "Cancel"),
{ click: function(e, obj) {
var diagram = e.diagram;
diagram.hideContextMenu();
} })
);
Однако, когда я пишу это, я получаю следующую ошибку:
Error: Diagram.contextMenu value is not an instance of Adornment
Как именно это так?
Вот мое определение SeatingMapGraphicsRef
function generateMap() {
SeatingMapGraphicsRef =
GO(go.Diagram, "mapBodyDiv", // the DIV HTML element
{
initialContentAlignment: go.Spot.Center,
initialAutoScale:go.Diagram.Uniform,
"toolManager.mouseWheelBehavior": go.ToolManager.WheelZoom
});
И, наконец, вот справочная страница по ContextMenus, из которой я взял определение contextMenu для diagram
уровень.
1 ответ
Решение
Потому что вы начали использовать:
var GO = go.GraphObject.make;
Вместо (обычно в образцах):
var $ = go.GraphObject.make;
Предположительно, потому что вы тоже используете jQuery.
Это, вероятно, будет работать, если вы измените все $
в GO
в вашем определении украшения