J'implémente un contrôleur pour un sélecteur de contenu dans Umbraco 7, où j'ai besoin de changer le nœud de démarrage pour qu'il corresponde à un nœud de contenu spécifique. Cependant wen je charge la page avec le sélecteur de contenu que je reçois une erreur disant:
« Impossible de lire la propriété « config » undefined »
En ce qui concerne ce morceau de code:
$scope.model.config.StartNodeId = 1083;
if ($scope.model.config.StartNodeId) {
options.startNodeId = $scope.model.config.StartNodeId;
}
Mon contrôleur entier:
angular.module("umbraco").controller("UIOMatic.FieldEditors.Pickers.ContentController",
function ($scope, $routeParams, $http, dialogService, entityResource, iconHelper) {
function init() {
if (!$scope.setting) {
$scope.setting = {};
}
var val = parseInt($scope.property.value);
if (!isNaN(val) && angular.isNumber(val) && val > 0) {
$scope.showQuery = false;
entityResource.getById(val, "Document").then(function (item) {
item.icon = iconHelper.convertFromLegacyIcon(item.icon);
$scope.node = item;
});
}
$scope.openContentPicker = function() {
var d = dialogService.treePicker({
section: "content",
treeAlias: "content",
multiPicker: false,
callback: populate
});
};
$scope.model.config.StartNodeId = 1083;
if ($scope.model.config.StartNodeId) {
options.startNodeId = $scope.model.config.StartNodeId;
}
$scope.clear = function() {
$scope.id = undefined;
$scope.node = undefined;
$scope.property.value = undefined;
};
function populate(item) {
$scope.clear();
item.icon = iconHelper.convertFromLegacyIcon(item.icon);
$scope.node = item;
$scope.id = item.id;
$scope.property.value = item.id;
}
};
if ($scope.valuesLoaded) {
init();
} else {
var unsubscribe = $scope.$on('valuesLoaded', function() {
init();
unsubscribe();
});
}
});
J'ai essayé de changer le début ID de nœud à 1083, ce que je veux, et je peux très bien ouvrir le sélecteur de contenu, mais cela ne me permettra pas d'enregistrer mes modifications. Cela permet aussi le multi-picking, que j'ai défini sur false dans mon objet de configuration.
Ceci est la documentation du sélecteur de contenu de l'auteur: http://uiomatic.readthedocs.io/en/stable/02.DefaultEditorViews/#content-picker
Merci, j'ai réussi à le résoudre! – Leth