Je suis en cours d'exécution Ember-1.0.0-RC.5 et j'ai créé une vue pour les commentaires DISQUS que je passe l'ID d'article.
Mon problème est que DISQUS ne sait pas quand je passe d'une page à une autre à une autre. strong> p> Ceci est le code de vue: P> DISQUS assertion failed: Unsafe attempt to redefine existing module: stringify [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: parse [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: domready [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: on [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: once [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: off [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: trigger [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: stopListening [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: listenTo [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: listenToOnce [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: bind [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: unbind [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: getShortnameFromUrl [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: getForum [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: isSSL [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: guessThreadTitle [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: getContrastYIQ [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: colorToHex [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: getElementStyle [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: getAnchorColor [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: normalizeFontValue [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: isSerif [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: getBrowserSupport [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: getPermalink [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: expose [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: BaseApp [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: WindowedApp [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: ThreadBoundApp [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: PublicInterfaceMixin [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: Switches [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: Profile [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: BackplaneIntegration [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: Lounge [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: Ignition [VM] embed.js (16737):1
DISQUS assertion failed: Unsafe attempt to redefine existing module: HostConfig
4 Réponses :
J'ai créé un travail JSBIN , jetez un coup d'œil.
sur quoi J'ai changé, cette ligne était erronée légèrement erronée p> mais peut également être omise en définissant l'élémentable sur la vue elle-même avec p> récupéré avec p> pour tester que cela fonctionne, j'ai mis dans la JSBIN au sommet Top fort> un lien vers un Pseudo À propos de la page, dans la page About, vous trouverez un lien de retour à la page d'index, passez en arrière et je ne vois aucun problème, DISQUS est chargé à chaque fois que prévu, bien que les erreurs apparaissent toujours. Cela pourrait être lié à la manière dont les disqus sont injectés dans le DOM. S'il vous plaît jeter un oeil et laissez-moi savoir si cela fonctionne pour vous. P> espère que cela aide. P> p>
Je ne pense pas que mon message original était clair. Le problème principal est que lorsque vous cliquez sur une page à une autre lorsque les deux pages ont des commentaires, les disqus ne connaissent pas sa page distincte.
Le JSBIN ne loge pas les varers supposés, mais un widget DISQUS générique, chargement de l'URL et du titre IFrame de sortie JSBIN.
Selon les DISQUS DOCS, vous pouvez réinitialiser le thread actif comme celui-ci:
DISQUS.reset({ reload: true, config: function () { this.page.identifier = "newidentifier"; this.page.url = "http://example.com/#!newthread"; } });
Je viens de terminer l'intégration d'async DISQUS sur un cadre de blogging Ember ( voir la source ici ) Et c'est comme ça que je l'ai fait: p> Premier, définissez les options En tant qu'objet (facilement accessible à tous les composants): p> Suivant, chargez des désquêmes une fois et une seule fois à l'aide du code qu'ils vous donnent. Je l'ai fait dans le composant: p> Vous pouvez également le faire en définissant une propriété En outre, vous pouvez le faire dans votre modèle de candidature à l'aide de "code> script code> tags mais cela apporterait une erreur si vous 'RE Chargement du script sur une page qui n'a pas et qui n'a pas d'élément avec un Suivant, utilisez le
disqusquie code> sur l'objet Options sur true après avoir exécuté le
setupdisqus () code> méthode et vérification contre cela. p>
ID code> de
#disqus_thread code>. p>
EM.View code> ou
em.component code> que vous placez sur chaque page où vous souhaitez que les commentaires apparaissent. Appelons-le
app.disquscommentsComponent code>. Ce composant aura no em> la mise en page (modèle). Étant donné que ce composant chargera chaque fois que nous modifions les itinéraires / messages, c'est l'endroit idéal pour appeler
DISQUS.RESET () CODE>. P>
{{#link-to 'post' this.urlString commentCount='true'}}{{/link-to}}
Merci beaucoup de partager cette pièce, tu m'as sauvé beaucoup de temps.
Aucun problème. Je l'ai effectivement transformé en un Ember Addon . Vous pourriez trouver cela utile.
Utilisation:
Le composant p> Le modèle de composant p> maintenant Vous pouvez ajouter des désquêmes dans n'importe quel modèle Avec: P> {{c-disqus}}