2016-01-25 12 views
5

Tôi đang xây dựng SPA bên trong Sharepoint 2013 bằng cách tải lên các tệp javascript và html vào thư viện tài liệu. Tôi đang cố gắng lấy thông tin người dùng hiện tại bằng cách truy cập thông tin ngữ cảnh thông qua thư viện sp.js. Nhưng tôi nhận được lỗi này:Thông tin ngữ cảnh Sharepoint trong trang HTML

_spPageContextInfo is not defined 

Trong file index.aspx của tôi bao gồm các js sau:

<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> 

Tôi cũng bao gồm này ở phía trên cùng của file 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" %> 

Trong tệp js của tôi, tôi có mã sau:

$(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; 
} 

Nó nên được đề cập rằng tôi sử dụng Angular JS để xây dựng ứng dụng, và tôi sử dụng thư viện Bộ định tuyến Giao diện người dùng góc để điều hướng giữa các trang.

Thư viện tài liệu nằm bên trong một trang con trong bộ sưu tập phụ.

Ví dụ:

intra.xxx.xxx/xxx/index.aspx

Mọi đề xuất?

+0

How are you tải bối cảnh của bạn? – brannmar

+0

Các tệp index.aps nằm trong thư viện tài liệu bên trong sharepoint (intra.xxx.xxx/index.aspx). Trên index.aspx tôi đang tải tất cả các tập tin sp.js. Tôi sử dụng router ui góc cho mục đích định tuyến. – TietjeDK

+0

Phiên bản Sharepoint nào? Trang ở đâu? Tài liệu LIbrary hoặc hệ thống tập tin? – Max

Trả lời

0

Nó bật ra rằng tôi apperantly là thiếu một số phụ thuộc sharepoint trên tập tin index.aspx của tôi.

Giải pháp

Bắt đầu index.aspx:

<%@ Page language="C#" %> 
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 
<%@ Import Namespace="Microsoft.SharePoint" %> 
<!DOCTYPE html> 

Scripts trong phần đầu:

<!--Sharepoint Dependencies--> 
    <script src="/_layouts/1033/init.js"></script> 
    <script src="/_layouts/1033/core.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> 
    <script src="/_layouts/SP.UI.Dialog.js"></script> 
    <script src="/_layouts/ScriptResx.ashx?culture=en%2Dus&name=SP%2ERes"></script> 

Body:

<!-- required: SharePoint FormDigest --> 
<form runat="server"> 
    <SharePoint:FormDigest runat="server"></SharePoint:FormDigest> 
</form> 
Các vấn đề liên quan