Создание новых наборов и терминов таксономии и термины во время развертывания Office 365 SharePoint Online App VS 2013

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/100100

Вопрос

Я только что начал создавать Office 365 SharePoint Online Apps, используя Visual Studio 2013, и я хочу добавить термин на термин, установленный в хранилище термина по умолчанию.Добавлен функция JavaScript в файле App.js, чтобы отключить, когда документ готов.Я последовал за примером онлайн и использовался в основном тот же код, изменяя имена и такие.Я могу развернуть приложение к моему сайту, но ничего не происходит.Код компилируется нормально и без ошибок времени выполнения.Термин не добавляется к набору термина.Я совершенно новый CSOM, так что мне интересно, забываете ли я забыть нагрузка или звонок запроса.Вот код, который я использую:

$(document).ready(function () {
var scriptbase = _spPageContextInfo.webServerRelativeUrl + "_layouts/15/";

$.getScript(scriptbase + "SP.Runtime.js",
    function () {
        $.getScript(scriptbase + "SP.js", function () {

            $.getScript(scriptbase + "SP.Taxonomy.js", execOperation);

        });
    }
);

getUserName();
.

});

function execOperation() {
var context = SP.ClientContext.get_current();

//Current Taxonomy Session
var taxSession = SP.Taxonomy.TaxonomySession.getTaxonomySession(context);

//Term Stores
var termStores = taxSession.get_termStores();

//Term Store under which to create the group.
var termStore = termStores.getByName("Taxonomy_/ClwSKVzefj+f2V6rXnmig==");

//Term Set under which to create the term.
var termSet = termStore.getTermSet("8ed8c9ea-7052-4c1d-a4d7-b9c10bffea6f");

//Name of the term, LCID and a new GUID for the term.
var newTerm = termSet.createTerm("Shaun", 1033, "b49f64b3-4722-4336-9a5c-56c326b344a9");

context.load(newTermSet);

context.executeQueryAsync(function(){
    alert("Term Created: " + newTerm.get_name());
},function(sender,args){
    console.log(args.get_message());
});
.

}

Мне интересно, о линии кода, установленная переменная сценария, если это проблема, но я не уверен, если она есть.

заранее спасибо, Shaun

Это было полезно?

Решение

Ваш код отлично работал для меня, кроме одного:

context.load(newTermSet);
.

должен быть

context.load(newTerm);
.

Похоже, что вы делали имя переменной переменной.

Редактировать Кроме того, если вы не в коллекции корневой площадки вашего веб-приложения, вам нужно поставить ведущую косоюзную колючку перед _layouts в вашем сценарем загрузке.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top