Buduję SPA wewnątrz Sharepoint 2013, przesyłając pliki javascript i html do biblioteki dokumentów. Próbuję uzyskać bieżące informacje o użytkowniku, uzyskując dostęp do informacji kontekstowych za pośrednictwem biblioteki sp.js. Ale pojawia się ten błąd:Informacje o kontekstach Sharepoint na stronie HTML
_spPageContextInfo is not defined
W moim pliku index.aspx i obejmują następujące JS:
<script src="/_layouts/1033/init.js"></script>
<script src="/_layouts/MicrosoftAjax.js"></script>
<script src="/_layouts/sp.core.js"></script>
<script src="/_layouts/sp.runtime.js"></script>
<script src="/_layouts/sp.js"></script>
włączyłem to również na początku pliku index.aspx:
<%@ Page language="C#" %>
<%@ Register Tagprefix="SharePoint"
Namespace="Microsoft.SharePoint.WebControls"
Assembly="Microsoft.SharePoint, Version=14.0.0.0,
Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
W moim pliku js mam następujący kod:
$(document).ready(function() {
// wait for the sharepoint javascript libraries to load, then call the function 'Initialize'
ExecuteOrDelayUntilScriptLoaded(runCode, "sp.js");
});
function runCode() {
var userid= _spPageContextInfo.userId;
}
Należy wspomnieć, że używam Angular JS do budowy aplikacji i używam biblioteki Angular UI Router do nawigacji między stronami.
Biblioteka dokumentów znajduje się wewnątrz podwitryny w zbiorze pobocznym.
E.g.
intra.xxx.xxx/xxx/index.aspx
Wszelkie sugestie?
Jak się ładuje twój kontekst? – brannmar
Plik index.aps znajduje się w bibliotece dokumentów wewnątrz programu sharepoint (intra.xxx.xxx/index.aspx). Na index.aspx ładuję wszystkie pliki sp.js. Używam kątowego routera ui do celów routingu. – TietjeDK
Która wersja Sharepoint? Gdzie jest strona? Dokument LIbrary lub system plików? – Max