Hibaelhárítási irányelvek szögletes tipp (Vagy, Learning To Love kötőjelet teljesen vége újra)

Nekem van egy pár, apps, hogy hogy $http.get() hívások, és akartam, hogy képes megmutatni a szépen formázott hibaüzenet jelenik meg a csúnya hiba részleteit rejtett, de elérhető.  Alapvetően, Ez:

image

Majd ha a felhasználó rákattint a hiba, látják, további információ:

image

Egyszerű megtöm.  Mivel a pontos ugyanaz lehetséges hiba jelenhet meg a közigazgatási képernyő, valamint a végfelhasználó számára képernyőn, Ez egyértelműen nevű egyéni szögletes irányelve.  I  Ezt találtam kiváló sorozat cikkek (http://weblogs.asp.net/dwahlin/creating-custom-angularjs-directives-part-i-the-fundamentals) a nagy Dan Wahlin.  A tanácsát követve, Nagyon gyorsan készítettem egy <Helló, világ> irányelv és az összetettebb hiba bemutatás rakli esélytelennek. Én spárgagombolyog-ba egy kis baj, összetettebb irányelvről.  Boldogan, valami véletlen, Azt mondta WebStorm (a szerkesztő használom ezekben a napokban) hogy a JS reszelő volt egy szögletes fájlt, és ez segített nekem kitalálni, hogy a kérdés.  Ez a kód az maga az irányelv:

angular.Module("CDLApp").irányelv("generalCdlErrorHandler", függvény() {

vissza {
korlátozása: "E",
csere: igaz,

hatókör: {
retrieveLastConfigurationError: "&"
},

sablon:
'<div class = "figyelmeztető riasztás-veszély" szerep = "figyelmeztetés" ng-init = "doShowExpandedErrorDetails = true" ng-show = "retrieveLastConfigurationError()">' +
"Volt egy I/O hiba vagy más hiba. Ez általában azért történik, mert a konfigurációs adatok reszelő nem tudott lenni " +
"található, vagy a konfigurációs fájl tartalmazza a pontatlan információk (mint viszonyítási dokumentumtárban " +
"nem létezik).' +
' <br />' +
' <div ng-show = "doShowExpandedErrorDetails">' +
' <a href = "#" ng-kattintson = "doShowExpandedErrorDetails = ! doShowExpandedErrorDetails">' +
"Kattintson ide, és elrejthetjük a részleteket." +
' </egy>: ' +
' <br />' +
' <előtti>{{retrieveLastConfigurationError() | JSON}}</előtti>' +
' <br />' +
' </Div>' +
' <div ng-show = "!doShowExpandedErrorDetails">' +
' <a href = "#" ng-kattintson = "doShowExpandedErrorDetails = ! doShowExpandedErrorDetails">' +
"Kattintson ide a hiba részletek kibontása." +
' </egy>' +
' </Div>' +
'</Div>'
};
});

Alapvetően, Én létre egy új elemet úgynevezett "generalCdlErrorHandler".  Szüksége van egy funkció úgynevezett retrieveLastConfigurationError való hozzáférés, és hogy kezeli az alkalmazási objektum.  Talán tudtam volna csak használni a szülőtartomány, de úgy érzi, hogy lusta.  Ha valaki azt hiszi, hogy kellett volna, Szeretnék hallani róla a hozzászólások.

Ez volt minden finom, de én nem kapok semmit.  Nincs hiba bukkant fel a konzol (legalább egyszer én rögzített a sx hibák az út mentén létrehozott).  Egyszerűen nem kapok semmilyen kimenetet az irányelv.  Ment, és hozzáadott néhány statikus szöveget, mielőtt az ng-Térkép-irányelv, és * tett *, hogy. Ez jutott eszembe, hogy talán az irányelv nem engedték, hogy implicit módon hozhat létre új vars, mint a "doShowExpandedErrorDetails" vagy "ng-init" van, ott. 

Mentem vissza, hogy, ha én típus, és ez alkalommal WebStorm segített én ki a HTML-be.  Volt nem halad, mint ez a retrieveLastConfigurationError függvényben:

<általános-centrálzár-hiba-kezelő retrieveLastConfigurationError="CDLController.retrieveLastConfigurationError()">
</általános-centrálzár-hiba-kezelő>

De valóban szükség van, hogy ez a:

<általános-centrálzár-hibakezelő elhoz-utolsó-konfiguráció-hiba = "CDLController.retrieveLastConfigurationError()">
</általános-centrálzár-hiba-kezelő>

WebStorm volt elég okos, hogy tudja, hogy meg kellett Kötőjeles.  Ha ez nem biztosított, hogy tipp, Én lenne talán lehet még hibaelhárítás ez Mosoly.  Fun-szer!

A trükk az ezt: nem csak az irányelv elemnév elválasztását, tehát van olyan attribútumokat ad hozzá.  Egyszer ki a kötőjeleket, minden munkás nagy.  Dan bemutató történt-hoz használ rövid nevek, így nem csinál a kapcsolatot.

Remél ez segít valaki.

</vége>

undefinedSubscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

IE9 Igazán nem szeret, ha veszel egy omlós torta-val a <span> Címkék

Már beleesett egy rossz szokása, a Chrome az idő.  Azért "rossz", mert a cucc én fejlesztése igazán szükséges-hoz fuss-ra egy csomó más pókháló legel, beleértve a, Sajnos az IE8.  Munkám során laptop birtokol IE9 standard bármilyen okból) én csak csinál egy gyors, és nézze meg, milyen dolgok nézett ki, mint és... ez nem volt elég.  Például:

image

Azt * kellene * úgy néz ki mint ez:

image

 

Csak nem volt ki, de én kattintson eseményeket nem égetés.  (Legtöbbjük, egyébként).

Vizuálisan, úgy nézett ki, mint a dolgok kezdtek megy le a sínek közelében a "További beállítások" linkre.  Vájt azt a részét a HTML, és megállapította, hogy ez a sor:

<span class = "glyphicon glyphicon-új-ablak" />

Úgy tűnik, mint a megengedett szintaxis ("A chrome verziója 40.02214.94 m"finom vele). Ment, és változtatott ez egyébként, Amint:

<span class = "glyphicon glyphicon-új-ablak"></span>

Amit rögzített ez.

Egy ilyen apró kis dolog okozott egy ilyen hatalmas rendetlenség-a képernyő.  Fun-szer.

Ez történt, hogy egy gyors erősít, de ez is az a fajta dolog, hogy csak lesz a gerincét az összehangolás, ha látod azt.  Vannak több mint 500 sornyi HTML-kódot, ez a kis admin függvény, és csak nem akar találni magadnak ásás mindazoknak gyomok között, valaha Mosoly.

</vége>

undefinedSubscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

HTTP 406 Hiba mikor használ szögletes $http.get ellen SharePoint többi végpontok

Frissítés: Marc AD ndersson rámutatott, ezt a nagy darab info: http://blogs.Office.com/2014/08/13/JSON-Light-support-Rest-SharePoint-API-Released/. Hogy sok mindent megmagyaráz :).

Lehet, hogy a legrosszabb cím egy blog felad valaha! Anyhoo.

Általában csinálni, minden az én prototípus ellen O365 példány. Nekem van az én-m személyes például úgy, hogy ne kelljen érintő valaki aggódik. Mint egy félre-emlékszik mikor hívjuk végzett, ezen a környéken: virtuális gépek a mi laptopok-és MOSS-SQL Server, IIS, döntés a Hyper-V vs. VMWare? Anyhoo...

Én alakult egy app segítségével szög ebben a környezetben amit csinál, egyebek, Ez:

$http.Get(serverUrl)
.siker(függvény(adatok, állapot, fejlécek, config) {

var getLinksResponse = adatok;

getLinksResponse.value.forEach(függvény(importőrrel) {

// és így tovább és így hab.

Ez volt csak finom környezetben dolgozó két különböző SharePoint online. Azonban, Mikor a kollégám átvittem ez egy Cloudshare-példány, ő volt szerzés egy HTTP 406 hiba (melyik volt az első alkalom, amit valaha kaptam, hogy az egyik, így... yay, azt hiszem). Csináltam egy kis kutatást, és észrevettem, hogy az "Elfogadom" fej le. SharePoint online tökéletesen elégedett volt:

Fogadja el: Application/json

De a cloudshare példány (amely az SP prem, a virtuális kiszolgálón tárolt) szerettem volna a klasszikus "odata = verbose" hozzáadott-ban, valamint:

Fogadja el: Application/json;OData = verbose

Rögzíteni, hogy, adtunk a fejlécben ilyen:

var config = {fejlécek: {
'Accept': "application/json;OData = verbose "
}
};

$http.Get(serverUrl,config)
.siker(függvény(adatok, állapot, fejlécek, config) {

var getLinksResponse = adatok;

getLinksResponse.value.forEach(függvény(importőrrel) {

// és így tovább és így hab.

Hogy megszabadultak az 406, de ez is megváltozott a formátum a válasz. Ez több volt... részletes. (haha!) További módosítások voltak szükségesek, és itt van a végleges eredmény:

var config = {fejlécek: {
'Accept': "application/json;OData = verbose "
}
};

$http.Get(serverUrl,config)
.siker(függvény(adatok, állapot, fejlécek, config) {

var getLinksResponse = adatok;

getLinksResponse.d.Results.forEach(függvény(importőrrel) {

// és így tovább és így hab.

Ez csak esztergált-ba egy 30 perc probléma a számunkra, Tehát mi lucked arra. Remélhetőleg valaki talál ez hasznos.

</vége>

Útmutató: Többszörös szögletes SharePoint kijelzők engedélyezéséhez ugyanazon az oldalon

Ez a blog hozzászólás ismerteti, hogyan lehet több Angular.js alapuló SharePoint-kijelzők (a Tartalomszerkesztő kijelző koordinátákkal) ugyanazon az oldalon. Hívom a Tartalomszerkesztő kijelző (CEWP) amely hivatkozik a JavaScript a Angular.js keretrendszer egy "szögletes kijelző."

Szög barátait betöltési folyamat szuper könnyű és csak arról szól minden példa megtalálja a internets megy valami ilyesmi:

<HTML ng-app = 'myApp'>

<bla /><bla /><bla />

</HTML>

Ez lebontja, azonban, Ha azt szeretné, ahhoz, hogy több CEWP képviselő több szögletes kijelzőt, ugyanazon az oldalon. Szög lesz csak automatikusan bootstrap ellen az első ng-app irányelv ez megtalál – legalább szögletes verziótól kezdve 1.3.6. A megoldás elég egyszerű – manuálisan bootstrap a kód helyett. A fenti most változik valami ilyesmi:

<szerv>
<d
IV. id =”bootstrapHere” ng-controller =”myController, mint theController”>
<bla /><bla /><bla />
</Div>
</szerv>

<parancsfájl-src =”//Ajax.googleapis.com/Ajax/libs/angularjs/1.3.6/angular.js”></parancsfájl>

<parancsfájl>
angular.Bootstrap(angular.Element(document.getElementById(“bootstrapHere”)),['myApp']);
</parancsfájl>

Alapvetően, helyett használ ng-app-a elem-hoz csinál a bootstrapping, pofon rá az elem ID. Majd, a rendszer a rendszertöltőt használja() módszer, szögletes a maga, hogy ellenőrizzék a bootstrapping folyamat futási időben. Már tesztelték ezt a három különböző szögletes kijelzők ugyanazon az oldalon, és ez szerkezet egy igézet.

</vége>

undefinedSubscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

A New Jersey gépjármű Bizottság veszi egy másik áldozat

Így, a fiam már egy kicsit esedékes, a vezetői engedély megszerzése.  Tegnap, a közép-reggel, ő tgk-ig Oakland NJ-hoz kap ez.  Ő lesz ott, kitölti a papírokat egy bélyegző engedélyt bocsátanak ki, és megtudja, hogy ő most megy egy másik MVC helyét átvegye a szemvizsgálat.  Mert, úgy látszik, magasan képzett szem tesztelők nem csak élni bárhol, így NJ MVC kell menni, ahol a tehetség.  Vagy, talán azért, mert Hamilton filozófia a konszolidáció követik?  Annyira, mint Hamilton éreztem, pénzügyi és gyártási konszolidáció szempontjából kritikus, hogy a jövőbeli gazdasági erejét a Köztársaság, NJ MVC talán úgy érzi, ők szükség Megerősít szem vizsgálata tehetség a jövő erő az NJ MVC?  Talán-a ' egy kimondhatatlan terv része?  Sajnos, Kérdésem csak ebben a témában, és nincs válasz. 

Következő Oakland-tanácsadás, felesége és fia truck útjukat lefelé Lodi, NJ, a bélyegző Lodi teszi lehetővé.  Lodi lehet a legrosszabb parkoló NJ MVC bárhonnan.  És, mivel ők is otthont néhány szűkös még erősen a hőn áhított szem vizsgáló gépek és tesztelés szakemberek szem, Ezek vonzzák a kérelmezők minden csíkok, árnyalatok, oktatás és bámul.  A fiam működik az utat a labirintusban a vonalak és a "never-look-them-in-the-eye" NJ MVC szakemberek által adott útmutatást, és végül megérkezik a szem vizsgálatára sor.  Most megtanulják, hogy a Oakland személy hibázott a bélyegző engedélyt.  Ő rosszul írtuk a társadalombiztosítási szám, elhelyezés egy egy "8" helyett "2" számjegy egyikében.  A NJ DMV személy tudta ezt, mert amikor ő húzta fel a hibás SS# a számítógépben, a fiam nevet nem mutatott.  Felesége és fia mondani, "ó, Ez a rossz szám, szüksége van egy '2' ott helyett "8." "  Nagyon sok, talán minden egyes tisztességes gondolkodású ember elvár ezen a ponton a NJ MVC személy egyszerűen megfelelő a szám ők most lépett be a számítógépbe.  Hegedűs! Bolond!  nem, Ehelyett azt kérték, hogy biztosított a társadalombiztosítási kártya.  Most elkalandozik egy pillanatra, és fontolja meg, hogy annak érdekében, hogy a bélyegző engedély az első helyen, ő már amennyiben egy amerikai útlevél, valamint a New Jersey-ben születési bizonyítványt és levelet írt neki, otthoni címére.   Az anyja van vele, osztja az ő neve, a cím, a magasság (de sajnos, nem az ő ízlése, a sci-fi filmek) ... és így tovább, a fiam is jól és igazán azonosított, mint az élet hosszú rezidens ezen államok és valóban, New Jersey magát minden olyan intézkedéssel, el lehet képzelni.  Az NJ MVC személy volna egyszerűen rögzíteni a hibát, ha a Oakland személy tett, a számítógép van felhúzva a fiam információk, és hogy lett volna a történet vége.  De megint, bolond!  Nem tud, hogy. Ehelyett, az NJ MVC ragaszkodnak a társadalombiztosítási kártya most. 

Így, felesége és fia megy haza-hoz kap ez és visszatér.  És a végén, ő engedélyt szerez.

Ez a három különböző kirándulások NJ MVC egy nap.  -Hoz kap a engedély.  Beletelt csaknem 6 óra az elejétől a végéig.  Ez az én fiam bevezetés a vezetés a Garden State.

NJ MVC egyértelműen megszakad. 

</vége>

Szögletes megbukik-hoz Bootstrap az IE9

Én már játszott ezen a környéken: a Angular.js az utolsó hosszú közben, és az élet nekem, Én nem tudott kap az én-m szögletes apps-hoz dob-ban IE9.  Minden jól működik a IE11, de az IE9 akar csak mutat a kapcsos zárójelek és hasonló bit.

Én keresett körül, és nem talált senkit arról panaszkodnak, hogy a probléma.  Ez munkás finom-ban Króm, IE11, csak nem az IE9.

Volt dobták ki az a tény, hogy az IE-konzol volt giving én hiba mint ez:

SEC7111: HTTPS-biztonság nem veszélyezteti a res://Ieframe.dll/forbidframing.htm

Ezt a hibát én gondoltam, hogy néhány probléma letöltő a szögletes vagy más könyvtárak, hogy szükség van.  Mint kiderült, nem ez volt a kérdés.

Dugta körül a internets, Végül kiderült, hogy a mondat, én szükséges-hoz keres "bootstrap", és hogy úgy tűnt, mintha a bootstrapping volt ennek hiányában.  A végén, az én problémám volt, hogy én volt díszítve az én-m <HTML> a ng-app attribútummal rendelkező tag, mint a:

<HTML ng-app = "MatrixApp">

Jól, Ez nem működik, az IE9.  Ehelyett, Én csomagolva az összes többi a HTML-ben a <szerv> belsejében egy div és referenciák MatrixApp így.

Megoldott probléma.

Remélhetőleg ez takarít meg valakit valamilyen bánat.

</vége>

Egyéni SharePoint űrlapok nélkül egy mesterlap létrehozása

Az én-m kolléga, Lauren Jones, írt egy szép séta a hogyan lehet létrehozni egy egyéni adatbeviteli űrlap SharePoint Designer használatával.  Nem pontosan ez az "új nap" alatt, de egy kis csavarral.  A szavai:

Egyéni űrlapok létrehozásához egyenes továbbít a SharePoint Designer alkalmazásban, Keresse meg a listán, és a szalag menüből válassza a "lista űrlap’ és az új űrlapsablon létrehozása.

Ez szerkezet jól, ha azt szeretné, hogy az űrlaphoz kell csatolni, akkor mesteroldal, de mi van, ha a használata esetén az űrlap létrehozása, amely egy előugró ablakban vagy önálló nélkül a SharePoint-króm. Pontosan ez a használati eset volt., Azt akartam, hogy egyéni stílus egy formája, akkor ezen a képernyőn egy felugró div beágyazott egy oldalon belül.

Ne ess kétségbe, van egy út-hoz csinál ez melyik van nem amit intuitív, de eléggé könnyű-hoz befejez.

A részleteket itt olvashatsz.: http://www.bigapplesharepoint.com/pages/View-An-Insight.aspx?BlogID=55&rtitle=customforms&rsrouce=pgblog és látni, akcióban a szolgáltatásokat a szolgáltatások lapján a Big Apple SharePoint-webhelyen a "lépjen kapcsolatba velünk további információért" linkre kattintva (http://www.bigapplesharepoint.com/services).

Lauren azt írja, sok jó dolog UX és a márkaépítés.  Láthatjuk több itt írok itt: http://www.bigapplesharepoint.com/team?showExpertName=Lauren%20Jones.

</vége>

Zavaró Design és a funkció Coolaid a részeg

Az én-m kolléga, Lauren Jones (https://twitter.com/laurenjones02) írt egy rövid cikket beszélt arról, hogy túlságosan összetett SP kiépítését is nagyon nehéz, a végfelhasználók.  Nyilvánvaló, egyfajta, módon, de ez könnyű számomra, hogy azt mondják, hogy miután már vezényelt egy csomó komplex kiépítését a dolgokat, hogy felkészületlenül végfelhasználók-az évek során.

Itt van a kulcs "grafikon:

Öt évvel ezelőtt, Amikor gördült ki a SharePoint olyan szervezet, amelynek elsődleges célja az első alkalommal az együttműködési platform egyre és megosztása meghajtók cseréje, Mi is bevezetett szociális és átmenő RSS hírcsatornák, Az én-m telek és profilok, és folksonomy címkézés. Mondanom sem kell, Ez sok volt a végfelhasználók számára, hogy fogadjanak el egy csapásra. Bár sikert elfogadása körül Dokumentumkezelés és profilok, RSS és címkézés kevésbé volt sikeres, és ez igazán volt a változás a management kommunikációja és a képzés. Mi nem tudtam csinálni egyszerre. Figyelembe véve a kevesebb több megközelítés és könnyebb a végfelhasználók számára, hogy elfogadja, és elfogadja, hogy mentesít a működési szakaszban.

Ez a cikk emlékeztet egy kicsit olvastam Kris Gale kapcsolódó sóvárog barátait vonás készlet, “Az egyetlen költség a mérnökök és a termék menedzserek nem tartom.”

Ha egy horror történet vagy sikertörténet megosztani, Remélem, akkor nem hogy hozzászólások a Big Apple oldalon.

</vége>

Heti Roundup – Július 13, 2014

I. a xpost ez itt az elmúlt hétvégén. 

Itt van a 3Rd a cikk egy sor, ahol írok, a blog póznák és online cikkek, amelyek különösen érdekes, hogy nekem a múlt héten, vagy úgy.  Ezen a héten bejegyzés a sorozat kiemeli két CodePlex projektek potenciális InfoPath-csere és kezelése engedély a SharePoint, Hírek a műholdak, még egy másik JavaScript keretrendszer és egy bólintással, hogy Ada Babbage és az ő szerepe a számítástechnika története.

Itt elolvashatja: http://www.bigapplesharepoint.com/pages/View-An-Insight.aspx?BlogID=93&rsource=pgblog&rtitle=roundup

</vége>

Nézd CAML lekérdezések valós idejű ULS Viewer

Az én-m kolléga, Márton Patel, írt fel egy szép séta leírja, hogyan lehet látni az mögött különböző SP CAML lekérdezések történik a valós idejű megjelenítővel a ULS üzleti tevékenysége során.

Itt van az intro:

Nem akarsz tudni, hogy milyen CAML-lekérdezések hajtják végre a SharePoint Server?

Jól, a hibaelhárítás és a tanulás célja, hogy ez nem egy rossz ötlet. végülis, Az SQL Profiler segített nekünk egy csomó problémák elhárítása.

Lehet, hogy a termékek odakinn, de én alakított ki kivezető út-hoz csinál ez nélkül költés többlet-keretfűrész! És itt van...

Tudod olvas a egész dolog itt: http://www.bigapplesharepoint.com/pages/View-An-Insight.aspx?BlogID=68&rsource=pgblog&rtitle=caml.

</vége>