小编Var*_*tel的帖子

angularjs ngMeta标题描述不是谷歌抓取

在我的Angularjs应用程序中,我正在使用此https://github.com/vinaygopinath/ngMeta.

<title ng-bind="ngMeta.title"></title>
<meta property="og:title" content="{{ngMeta.title}}" />
<meta property="og:description" content="{{ngMeta.description}}" />
Run Code Online (Sandbox Code Playgroud)

我的控制器代码是

app.controller('controller1',function($scope, $location , $http , $routeParams, ngMeta, $route){
    $scope.$route = $route;
    ngMeta.setTitle('site title');
    ngMeta.setTag('description', 'this is description');
    ngMeta.setTag('keywords', 'tag1, tsg2, tag3');
});
Run Code Online (Sandbox Code Playgroud)

在页面加载一切正常,但谷歌显示{{ngMeta.description}} {{ngMeta.title}}这样任何帮助来解决这个问题.

angularjs

26
推荐指数
2
解决办法
2884
查看次数

避免在Angular UI Modal中使用$ timeout

在这个插件中,我有一个Angular UI Modal包装在一个指令中.从控制器,我调用一个方法来打开模态,但为此我需要使用$timeout,否则,DOM还没有完成渲染指令.

这似乎有效,但是如果需要完成的任何事情在$timeout到期后还没有完成,会发生什么?该$timeout可以在开发环境中工作,但在生产中可能会失败.使用是不好的做法$timeout?如何在这个例子中避免使用它?

HTML

<div modal control="modalCtl"></div>
Run Code Online (Sandbox Code Playgroud)

使用Javascript

var app = angular.module('app', ['ui.bootstrap']);

app.controller('myCtl', function($scope,$timeout) {
    $scope.modalCtl = {};       
    $timeout(function(){
        $scope.modalCtl.openModal();
    },100);         
})
.directive('modal', function ($uibModal) {
    var directive = {};
    directive.restrict = 'EA';
    directive.scope = {    
        control: '='
    };
    directive.link = function (scope, element, attrs) {
        scope.control = scope.control || {};            
        scope.control.openModal = function() {
            scope.modalInstance = $uibModal.open({
                template: '<button ng-click="close()">Close</button>',
                scope: scope
            })
        };
        scope.close = function () …
Run Code Online (Sandbox Code Playgroud)

angularjs angular-ui angularjs-directive angular-ui-bootstrap

5
推荐指数
1
解决办法
666
查看次数

带有自定义按钮的 HTML5 视频无法在 safari 12 上播放

Safari 已阻止自动播放完全可以理解的视频。但我必须找到一种解决方法,让视频“自动”播放。\n顺便说一句,我使用VueJS

\n\n

视频:

\n\n
<video preload="auto" id="videowizy" class="video mockup-size">\n    <source src="../assets/video.mp4" type="video/mp4">\n</video>\n
Run Code Online (Sandbox Code Playgroud)\n\n

该视频仅在按下自定义播放按钮时播放

\n\n
<a id="play" @click="startVideo">Play Video \xe2\x96\xb6</a>\n
Run Code Online (Sandbox Code Playgroud)\n\n

我从.play();开始 功能。

\n\n
this.videoStarted = true;\nwindow.setTimeout(() => {\n    this.videoVisible = true;\n    var video = document.getElementById(\'videowizy\');\n    video.addEventListener(\'ended\',this.stopVideo,false);\n    video.play();\n},2000)\n
Run Code Online (Sandbox Code Playgroud)\n\n

现在回答问题。Safari 12 向我抛出以下错误

\n\n
\n

未处理的承诺拒绝:NotAllowedError:当前上下文中的用户代理或平台不允许该请求,可能是因为用户拒绝了权限。

\n
\n\n

当我使用controls=true时我会被修复,但是当我使用controls=true时我无法按播放,因为视频绝对位于框架后面(以模拟手机的模型)。\n有没有办法说“嘿这个是播放按钮,请让我玩 Safari”?

\n\n

提前致谢!

\n

html javascript safari html5-video vue.js

5
推荐指数
0
解决办法
1468
查看次数

如何在login.vue中添加标题?

如何更新 apolloProvider 的标头?

请查看 nativescript-vue 应用程序存储库:

https://github.com/kaanguru/vue-apollo-login

我无法正确解释,所以请查看该应用程序。我不知道如何更新 appolloClient 标头。

应用程序存储库有自己的注释和指令。您可以轻松安装和查看。

当前代码结构:

Post 请求提交用户的标识符和密码凭据进行身份验证,并在登录页面获取令牌

Apollo 需要将 jwt 令牌放入 Authorization 标头中。

  • Main.js:如果有 JWT 以标头开头,则启动 apollo 客户端

    • 如果没有 JWT 则转到登录

    • 如果有智威汤逊,请转到鸟类列表

  • 登录:从服务器获取jwt并将其写入本地存储

    • 转到鸟类列表(不显示数据,因为 apollo 在主 js 中初始化)

结构


import ApolloClient from 'apollo-boost'
import VueApollo from 'vue-apollo'

Vue.use(VueApollo)

const apolloClient = new ApolloClient({
  uri: 'http://sebapi.com/graphql',

// HEADERS WORK FINE IF TOKEN WAS IN MAIN
//   headers: {
//     authorization: `Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwiaWF0IjoxNTg2MzU2NzM2LCJleHAiOjE1ODg5NDg3MzZ9.wpyhPTWuqxrDgezDXJqIOaAIaocpM8Ehd3BhQUWKK5Q`,
// }

})
const apolloProvider = new VueApollo({
  defaultClient: …
Run Code Online (Sandbox Code Playgroud)

android vue.js graphql vue-apollo nativescript-vue

5
推荐指数
1
解决办法
5836
查看次数

如何在另一个 prop 中使用 prop 作为 vuejs 中的默认值

我正在使用来自 git hub 的这个包作为 vuejs 的负加输入,在 v2 文件夹示例中有一个名为 plusminusfield.vue 的示例文件,这是我用来使用它的:

 export default {
    props: {



        value: {
            default: 0,
            type: Number
        },
       base_capacity: {
            type: Number,
            required: true
        },
        min: {
             default: here I want to use the sent variable which is defined above and that is base_capacity 
 if I send a hard code like 5 it works well but I want to make it dynamic
             type:Number
        },
        max: {
            default: 22,
            type: Number
        },
    },
    data(){
        return …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js

2
推荐指数
2
解决办法
3085
查看次数