关键词挖掘/凌哥seo技术博客

关键词挖掘,凌哥seo技术博客,wordpress 链接添加,企业网站的设计公司初级使用可以查看视频 参考手册 注意 像ng-class,ng-value,ng-href等这些,很多都可以直接用class“{{}}” 原生写,为啥还出这些指令,是因为原生的比如刚一进页面就先出现表达式了,浏览器走到这里的时候才去解析,给用户…

初级使用可以查看视频
参考手册
注意

  • 像ng-class,ng-value,ng-href等这些,很多都可以直接用class=“{{}}” 原生写,为啥还出这些指令,是因为原生的比如刚一进页面就先出现表达式了,浏览器走到这里的时候才去解析,给用户的体验不好

ng-app

  • angular只对这个标签以内的起作用,要不就直接原生解析
  • 告诉angular核心它管理当前标签所包含的整个区域,有自动创建$rootScope(根作用域对象),如果是可以ng-app = “*” 就是模块名 ,就是那个.module('')

ng-controller=“*”,

  • 新创建一个新的作用域,然后自动new构造函数就是.controller里面名字,(name, [ s c o p e , f u n c t i o n ( scope, function( scope,function(scope) {}]),
  • 用数组的原因,是这个$scope不可以变名字,但是压缩后的代码一般都会形参变成a,b,c,d这种,所以用数组这种传,
  • 可以使用as用来面向对象,其实就是相当于new的实例可以使用原型链上的方法或属性,面向对象

ng-repeat:

遍历,里面可以用$index, $first(第一项), $middle(除了第一和最后), $last(最后一项), $odd, $even / ng-repeat-start ng-repeat-end 可以用来嵌套
先来个完整的:后面只是使用的例子

ng-init 初始化数据 ng-init=“username=‘zjap’”, 一般也不会用,但是比如嵌套循环的时候可能会用到

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.active1 {background: red}.active2 {background: green}</style>
</head>
<body ng-app="myApp" ng-controller="Aaa"><ul><!-- 隔行换色 --><li ng-repeat="data in dataList" class="{{$odd? 'active1': 'active2'}}">{{data}}{{$odd}}</li></ul><table border="1"><!-- 这种相当于嵌套的<template v-for似的,ng-show让其隐藏要不可能影响合并> --><tr ng-show="false" ng-repeat-start="data in twoTableLitst track by $index" ng-init="outIndex=$index"></tr><tr ng-repeat="chil in data.children track by $index" ng-init="inIndex=$index"><td ng-if="inIndex == 0" rowspan="{{data.children.length}}">{{ data.name }}</td><td>{{ chil }}</td></tr><tr ng-show="false" ng-repeat-end></tr></table><script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.8.2/angular.min.js"></script><script>var m1 = angular.module('myApp', [])m1.controller('Aaa', ['$scope', function($scope) {$scope.dataList = ['aaa', 'bbb', 'ccc', 'ddd']$scope.twoTableLitst = [{name: 'aaa', children: ['11', '22']},{name: 'bbb', children: ['11', '22']},]}])</script>
</body>
</html>
<body ng-app="myApp" ng-controller="Aaa as a1"><span>{{a1.text}}</span><script src="./public/angular.js"></script><script> var m1 = angular.module('myApp', [])m1.controller('Aaa', ['$scope', FnAaa])function FnAaa($scope) {}FnAaa.prototype.text="woshi"</script>
</body>

ng-class:动态class

ng-style: 动态style

ng-href href

ng-src

ng-attr-**这个基本其他所有的属性都可以使用,因为不可能原生的都有对应的ng-属性,所以咱们就是所有属性都可以用这个eg:title

ng-disabled --$interval 不可点击

ng-readonly 只读

ng-checked 複選框选中

ng-value 输入框等的值

也可以用value=“{{}}”,但是这个体验不好,用户可能先在页面看到{{}},后期才能看到内容,所以推荐ng-value

<body ng-app="myApp" ng-controller="Aaa"><span ng-class="{active: IsDisabled}" ng-style="{color: 'yellow'}">{{ text }}</span><span ng-style="ngStyle">{{ text }}</span><span ng-class="ngClass">{{ text }}</span><a ng-href="{{ngHerf}}" ng-attr-title="{{ text }}">qubaidu</a><input type="button" ng-value="text" ng-disabled="IsDisabled"><input type="text" ng-value="text" ng-readonly="IsDisabled"><input type="checkbox" ng-checked="IsDisabled"><script src="./public/angular.js"></script><script> var m1 = angular.module('myApp', [])m1.controller('Aaa', ['$scope', '$interval', function($scope, $interval) {// setInterval --$scope.apply()let iNow = 5$scope.text = iNow + '秒'$scope.IsDisabled = true$scope.ngStyle={background: 'yellow',color: 'red'}$scope.ngClass = {active: true}$scope.ngHerf = "http://www.baidu.com"const timer = $interval(function() {iNow--$scope.text = iNow + '秒'if (iNow === 0) {$interval.cancel(timer)$scope.IsDisabled = false}}, 1000)}])</script>
</body>

ng-bind

解决{{}}闪屏问题,因为{{}} 当时浏览器不知道,到下面看到angular,再上去解析这种就会闪屏,跟ng-value似的

ng-cloak

这个就是比如用户就想用{{}}不想用ng-bind,但是想让{{}}解析出来才展示,平常时候就是display:none

ng-bind-template

这个就是比如标签中内容多个{{}},肯定用ng-bind不合适,所以就使用这个

ng-bind-html

这个就是解析成html,但是因为这个功能不常用,所以angular就设置成一个插件形式,后期需要按照模块引入就行,从这里查:https://www.bootcdn.cn/angular.js/,下面代码其实是有问题的,可能是引入的库不对,后面研究,但是写法基本是这种

ng-non-bindable // 就比如说想让{{}}展示出来,不去解析

<body ng-app="myApp" ng-controller="Aaa"><span ng-bind="text"></span><span ng-cloak>{{ text }}</span><span ng-bind-template="{{ text }}, {{text}}"></span><div ng-bind-html="htmlstr"></div><span ng-non-bindable>{{ text }}</span><script src="./public/angular.js"></script><script src="https://cdn.staticfile.org/angular.js/1.5.0-beta.0/angular-sanitize.min.js"></script><script>// alert('1')var m1 = angular.module('myApp', ['ngSanitize'])m1.controller('Aaa', ['$scope', function($scope) {$scope.text = 'nihao'$scope.htmlstr = '<h1>1111</h1>'}])</script>
</body>

ng-show,ng-hide 显示隐藏,就是css的disable的切换

ng-if dom元素显示

ng-switch

ng-open 应用于details,默认是展开还是隐藏

<body ng-app="myApp" ng-controller="Aaa"><input type="button" value="点击" ng-click="checkButton()"><span v-if="isShow">展示</span><div ng-switch on="lalal"><p ng-switch-when="1">我是1</p><p ng-switch-when="2">我是2</p><p ng-switch-default>我是其他</p></div><details ng-open="isShow"><summary>我是总体</summary><p>我是介绍</p></details><script src="./public/angular.js"></script><script> var m1 = angular.module('myApp', [])m1.controller('Aaa', ['$scope', function($scope) {$scope.isShow = true$scope.lalal = 1$scope.checkButton = function() {$scope.isShow = !$scope.isShow$scope.lalal++}}])</script>
</body>

ng-model: 跟v-model似的,双向数据绑定,但是如果比如想不时实的去更改可以使用ng-model-options和updateOn去配置

ng-include 可以引入新的html,这个在这个上面写也是报错,目前不知道到为啥

—我知道为啥了,需要放到服务器上,不是本地浏览器打开

<body ng-app="myApp" ng-controller="Aaa"><!-- 但是不起作用,不知道为啥 --><div ng-include="'moni.html'"></div><!-- 不时实,失去焦点才变 --><input type="text" ng-model="text" ng-model-options="{updateOn: 'blur'}"><span>{{text}}</span><script src="./public/angular.js"></script><script> var m1 = angular.module('myApp', [])m1.controller('Aaa', ['$scope', function($scope) {$scope.text = "我是开始"}])</script>
</body>
</html>

事件

ng-mouseenter,ng-mouseleave 移入移出

ng-click/dbclick 点击

ng-selected //下拉菜单选中

ng-change // input change事件

ng-copy ng-cut ng-paste 输入框复制,j剪切,粘贴操作

其他原生事件都可以用ng-事件名

标签指令

<a> 普通的a标签会点击刷新页面有默认行为,angluar重新封装了下,没有默认行为了

select

-- ng-options

form

-- novalidate
<body><div ng-app="myApp" ng-controller="Aaa"><!-- 默认行为点击 --><a href="">{{myColor}}</a><!-- myColor是color对象,color.name是展示的 --><select ng-options="color.name for color in colors" ng-model="myColor"></select><!-- 如果不写novalidate会有默认表单样式,比如说输入不是email,就会有红色边框,这没模拟出来 --><form novalidate><input type="email"></form></div><a href="">aaaaaaaaaaaa</a><script src="./public/angular.js"></script><script> var m1 = angular.module('myApp', [])m1.controller('Aaa', ['$scope', function($scope) {$scope.colors = [{name: 'red'}, {name: 'yellow'}]$scope.myColor = ''}])</script>
</body>

这些结合表单验证更容易理解,看3文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/73126.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CTFshow 【WEB入门】信息搜集 【VIP限免】 web1-web17

CTFshow 【 WEB入门】、【VIP限免】 web1 ----源码泄露 首先第一步&#xff0c;看源代码 web2----前台JS绕过 简单点击查看不了源代码&#xff0c;可以强制查看 比如 Ctrl Shift ICtrl U或者在url前加一个view-source: view-source:http://79999ca1-7403-46da-b25b-7ba9…

Spring boot3-WebClient远程调用非阻塞、响应式HTTP客户端

来吧&#xff0c;会用就行具体理论不讨论 1、首先pom.xml引入webflux依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId> </dependency> 别问为什么因为是响应式....…

写了一个二叉树构造函数和画图函数,方便debug

代码 class TreeNode(object):def __init__(self, val, leftNone, rightNone):self.val valself.left leftself.right rightdef construct_tree(nodes):if not nodes:return Noneroot TreeNode(nodes[0])queue [root]index 1while index < len(nodes):node queue.p…

QT:串口上位机

创建工程 布局UI界面 设置名称 设置数据 设置波特率 波特率默认9600 设置数据位 数据位默认8 设置停止位 设置校验位 调整串口设置、接收设置、发送设置为Group Box 修改配置 QT core gui serialport 代码详解 mianwindow.h 首先在mianwindow.h当中定义一个串口指…

使用netlify部署github的vue/react项目或本地的dist,国内也可以正常访问

提供简洁的部署流程和丰富功能&#xff0c;如自定义域名、自动构建和服务器端功能。通过连接到 Git 仓库实现持续部署&#xff0c;每次推送代码都会自动构建和发布&#xff0c;支持无服务器函数&#xff0c;允许在前端项目中实现后端逻辑&#xff0c;提供直观的用户界面来管理和…

Redis-缓存穿透击穿雪崩

1. 穿透问题 缓存穿透问题就是查询不存在的数据。在缓存穿透中&#xff0c;先查缓存&#xff0c;缓存没有数据&#xff0c;就会请求到数据库上&#xff0c;导致数据库压力剧增。 解决方法&#xff1a; 给不存在的key加上空值&#xff0c;防止每次都会请求到数据库。布隆过滤器…

刷leetcode hot100--动态规划3.12

第一题乘积max子数组[1h] emmmm感觉看不懂题解 线性dp【计划学一下acwing&#xff0c;挨个做一下】 线性动态规划 相似题解析 最长上升子序列 最大上升子序列和 最大连续子段和 乘积最大子数组_哔哩哔哩_bilibili 比较奇怪的就是有正负数和0&#xff0c;如何处理&#xff1f…

为什么大模型网站使用 SSE 而不是 WebSocket?

在大模型网站&#xff08;如 ChatGPT、Claude、Gemini 等&#xff09;中&#xff0c;前端通常使用 EventSource&#xff08;Server-Sent Events, SSE&#xff09; 来与后端对接&#xff0c;而不是 WebSocket。这是因为 SSE 更适合类似流式文本生成的场景。下面我们详细对比 SSE…

TDengine 数据对接 EXCEL

简介 通过配置使用 ODBC 连接器&#xff0c;Excel 可以快速访问 TDengine 的数据。用户可以将标签数据、原始时序数据或按时间聚合后的时序数据从 TDengine 导入到 Excel&#xff0c;用以制作报表整个过程不需要任何代码编写过程。 前置条件 准备以下环境&#xff1a; TDen…

【具身相关】legged_gym, isaacgym、rsl_rl关系梳理

【legged_gym】legged_gym, isaacgym代码逻辑梳理 总体关系IsaacGymlegged_gymrsl_rl三者的关系 legged_gym代码库介绍环境模块env 总体关系 IsaacGym Isaac Gym 是 NVIDIA 开发的一个高性能物理仿真平台&#xff0c;专门用于强化学习和机器人控制任务。它基于 NVIDIA 的 Phy…

全链条自研可控|江波龙汽车存储“双轮驱动”体系亮相MemoryS 2025

3月12日&#xff0c;MemoryS 2025在深圳盛大开幕&#xff0c;汇聚了存储行业的顶尖专家、企业领袖以及技术先锋&#xff0c;共同探讨存储技术的未来发展方向及其在商业领域的创新应用。江波龙董事长、总经理蔡华波先生受邀出席&#xff0c;并发表了题为《存储商业综合创新》的主…

基于Python+SQLite实现校园信息化统计平台

一、项目基本情况 概述 本项目以清华大学为预期用户&#xff0c;作为校内信息化统计平台进行服务&#xff0c;建立网页端和移动端校内信息化统计平台&#xff0c;基于Project_1的需求实现。 本项目能够满足校内学生团体的几类统计需求&#xff0c;如活动报名、实验室招募、多…

(每日一题) 力扣 2418. 按身高排序

文章目录 &#x1f984; LeetCode 2418.按身高排序&#xff5c;双解法对比与下标排序的精妙设计&#x1f4dd; 问题描述&#x1f4a1; 解法思路分析方法一&#xff1a;Pair打包法&#xff08;直接排序&#xff09;方法二&#xff1a;下标排序法&#xff08;当前实现&#xff09…

计算机毕业设计:ktv点歌系统

ktv点歌系统mysql数据库创建语句ktv点歌系统oracle数据库创建语句ktv点歌系统sqlserver数据库创建语句ktv点歌系统springspringMVChibernate框架对象(javaBean,pojo)设计ktv点歌系统springspringMVCmybatis框架对象(javaBean,pojo)设计 ktv点歌系统mysql数据库版本源码&#xf…

Deepin通过二进制方式升级部署高版本 Docker

一、背景&#xff1a; 在Deepin系统中通过二进制方式升级部署高版本 Docker&#xff0c;下面将详细介绍二进制方式升级部署高版本 Docker 的具体步骤。 二、操作步骤 1.根据需求下载二进制文件&#xff0c;下载地址如下&#xff1a; https://mirrors.tuna.tsinghua.e…

2025年Draw.io最新版本下载安装教程,附详细图文

2025年Draw.io最新版本下载安装教程&#xff0c;附详细图文 大家好&#xff0c;今天给大家介绍一款非常实用的流程图绘制软件——Draw.io。不管你是平时需要设计流程图、绘制思维导图&#xff0c;还是制作架构图&#xff0c;甚至是简单的草图&#xff0c;它都能帮你轻松搞定。…

道路运输安全员考试备考:循序渐进,稳步提升

备考道路运输安全员考试是一个循序渐进的过程&#xff0c;需要稳步提升自己的知识和能力。​ 第一阶段是基础巩固阶段。这一阶段要以教材为核心&#xff0c;全面系统地学习各个知识板块。从道路运输法规开始&#xff0c;逐章逐节地学习&#xff0c;理解每一条法规的含义和适用…

滑动窗口(2)——哈希表辅助的滑动窗口算法

欢迎来到博主的专栏&#xff1a;算法解析 博主ID&#xff1a;代码小豪 文章目录 leetcode438——找到字符串中所有字母异位词题目解析算法原理题解代码 leetcode30——串联所有单词的子串题目解析算法原理题解代码 leetcode438——找到字符串中所有字母异位词 题目解析 异位词…

Node-RED基础1

目录 一、概述二、安装三、基操四、通讯五、数据六、节点七、 应用END 一、概述 Rode-Red是什么&#xff1f; 基于Node.js的物联网开发工具&#xff0c;做API、通讯&#xff1b;提供了一些基本的监控功能&#xff0c;可在编辑器界面中查看节点的运行状态、消息流量等信息。通…

java登神之阶之顺序表

一、了解List接口 在Java中&#xff0c;List接口是一个非常重要的集合框架接口&#xff0c;它继承自Collection接口&#xff08;Collection接口继承Iterable接口&#xff09;。List接口定义了一个有序集合&#xff0c;允许我们存储元素集合。并且可以根据元素的索引来访问集合中…